Approches formelles en syntaxe et sémantique Alain Lecomte UMR 7023 Structures Formelles de la Langue.

Slides:



Advertisements
Similar presentations
But… Why not to have a syntax built on the same principles as those of semantic composition?
Advertisements

Relative Pronouns Qui, que.
Computational language: week 10 Lexical Knowledge Representation concluded Syntax-based computational language Sentence structure: syntax Context free.
 Christel Kemke 2007/08 COMP 4060 Natural Language Processing Feature Structures and Unification.
Learning to Interpret Natural Language Instructions Monica Babeş-Vroman +, James MacGlashan *, Ruoyuan Gao +, Kevin Winner * Richard Adjogah *, Marie desJardins.
ICE1341 Programming Languages Spring 2005 Lecture #6 Lecture #6 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information and Communications University.
NP Movement Passives, Raising: When NPs are not in their theta positions.
Anders Holmberg CRiLLS.  The grammar of a language L: The set of categories, rules, and principles which relate sound to meaning in L  Speech sound.
May 2006CLINT-LN Parsing1 Computational Linguistics Introduction Approaches to Parsing.
Warm up In the morning, do you check the weather before you go out? Does it matter or not ?
Language and Cognition Colombo, June 2011 Day 2 Introduction to Linguistic Theory, Part 4.
Grammatical Relations and Lexical Functional Grammar Grammar Formalisms Spring Term 2004.
Collège Jean Monnet ACTIVITES MENTALES Question 1 Quel nombre obtient- on en multipliant 9 par 7 ?
THE STRUCTURE OF SENTENCES Syntax. Learning objectives Explain the notions “language organ” and “Universal Grammar” Explain the similarities and differences.
Linguistic Theory Lecture 8 Meaning and Grammar. A brief history In classical and traditional grammar not much distinction was made between grammar and.
LTAG Semantics on the Derivation Tree Presented by Maria I. Tchalakova.
On the Role of MSBN to Cooperative Multiagent Systems By Y. Xiang and V. Lesser Presented by: Jingshan Huang and Sharon Xi.
C SC 620 Advanced Topics in Natural Language Processing Lecture 20 4/8.
Minimalist Parsing Scott Drellishak CompLing Lab Meeting 2/1/2006.
Correctness. Until now We’ve seen how to define dataflow analyses How do we know our analyses are correct? We could reason about each individual analysis.
Slide 1 Chapter 2-b Syntax, Semantics. Slide 2 Syntax, Semantics - Definition The syntax of a programming language is the form of its expressions, statements.
Semantics with Applications Mooly Sagiv Schrirber html:// Textbooks:Winskel The.
PRAGMATICS. 3- Pragmatics is the study of how more gets communicated than is said. It explores how a great deal of what is unsaid is recognized. 4.
Winter 2003/4Pls – syntax – Catriel Beeri1 SYNTAX Syntax: form, structure The syntax of a pl: The set of its well-formed programs The rules that define.
Language Translation Principles Part 1: Language Specification.
VP: [VP[Vhelp[ [PRNyou]]
Chapter 4 Context-Free Languages Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
Languages & Strings String Operations Language Definitions.
The physical reductive explainability of phenomenal consciousness and the logical impossibility of zombies Marco Giunti University of Cagliari (Italy)
Tree-adjoining grammar (TAG) is a grammar formalism defined by Aravind Joshi and introduced in Tree-adjoining grammars are somewhat similar to context-free.
An Algebra for Composing Access Control Policies (2002) Author: PIERO BONATTI, SABRINA DE CAPITANI DI, PIERANGELA SAMARATI Presenter: Siqing Du Date:
Syntax Analysis The recognition problem: given a grammar G and a string w, is w  L(G)? The parsing problem: if G is a grammar and w  L(G), how can w.
SYNTAX Lecture -1 SMRITI SINGH.
1 LIN 1310B Introduction to Linguistics Prof: Nikolay Slavkov TA: Qinghua Tang CLASS 13, Feb 16, 2007.
Classification of grammars Definition: A grammar G is said to be 1)Right-linear if each production in P is of the form A  xB or A  x where A and B are.
1 Natural Language Processing Lecture Notes 11 Chapter 15 (part 1)
May 2006CLINT-LN Parsing1 Computational Linguistics Introduction Parsing with Context Free Grammars.
Principles of programming languages 5: An operational semantics of a small subset of C Department of Information Science and Engineering Isao Sasano.
Slide 1 Propositional Definite Clause Logic: Syntax, Semantics and Bottom-up Proofs Jim Little UBC CS 322 – CSP October 20, 2014.
Bernd Fischer RW713: Compiler and Software Language Engineering.
Formal Specification of Intrusion Signatures and Detection Rules By Jean-Philippe Pouzol and Mireille Ducassé 15 th IEEE Computer Security Foundations.
Semantic Construction lecture 2. Semantic Construction Is there a systematic way of constructing semantic representation from a sentence of English? This.
What’s in a translation rule? Paper by Galley, Hopkins, Knight & Marcu Presentation By: Behrang Mohit.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
Rules, Movement, Ambiguity
Reasoning with Dependency Structures and Lexicographic Definitions using Unit Graphs Maxime Lefrançois, Fabien Gandon [ maxime.lefrancois | fabien.gandon.
The Minimalist Program
FlexFlow: A Flexible Flow Policy Specification Framework Shipping Chen, Duminda Wijesekera and Sushil Jajodia Center for Secure Information Systems George.
Linguistic Theory Lecture 5 Filters. The Structure of the Grammar 1960s (Standard Theory) LexiconPhrase Structure Rules Deep Structure Transformations.
LESSON 04.
© 2005 Hans Uszkoreit FLST WS 05/06 FLST Grammars and Parsing Hans Uszkoreit.
Grammars Hopcroft, Motawi, Ullman, Chap 5. Grammars Describes underlying rules (syntax) of programming languages Compilers (parsers) are based on such.
CPSC 422, Lecture 27Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 27 Nov, 16, 2015.
ACTL 2008 Syntax: Introduction to LFG Peter Austin, Linguistics Department, SOAS with thanks to Kersti Börjars & Nigel Vincent.
Agreement 2 Nov 9, 2012 – Day 30 Introduction to Syntax ANTH 3590/7590 Harry Howard Tulane University.
Overview of Previous Lesson(s) Over View 3 Model of a Compiler Front End.
Language and Cognition Colombo, June 2011 Day 2 Introduction to Linguistic Theory, Part 3.
1 Principles & Parameters Approach in Linguistics II Bibhuti Bhusan Mahapatra.
Machine Learning Lecture 1: Intro + Decision Trees Moshe Koppel Slides adapted from Tom Mitchell and from Dan Roth.
A Computational Approach to Minimalism Alain LECOMTE INRIA-FUTURS (team SIGNES) & CLIPS-IMAG (Grenoble)
LECT. 11 DR. AMAL ALSAIKHAN Government and Case Theories.
American Sign Language
10/31/00 1 Introduction to Cognitive Science Linguistics Component Topic: Formal Grammars: Generating and Parsing Lecturer: Dr Bodomo.
On the status of the deep-syntactic structure Sylvain Kahane Lattice, Paris 7 / Paris 10 MTT 2003, ENS 18 juin 2003.
The structure of sentences
An Introduction to the Government and Binding Theory
EQUATION IN TWO VARIABLES:
Introduction to Linguistics
Pumping Lemma for Context-free Languages
Principles and Parameters (I)
Presentation transcript:

Approches formelles en syntaxe et sémantique Alain Lecomte UMR 7023 Structures Formelles de la Langue

programme minimaliste Deux opérations générales: –merge –move

definition A minimalist grammar is a 4-tuple (V, Cat, Lex, F) where: –V = P I –Cat = (base select licensee licensor), –Lex = cf. above –F = {merge, move} ex: P = {/marie/, /pierre/, /le/,/quechua/,…} I = {(marie), (pierre), (quechua), (le),…} base = {c, t, v, d, n, …} select = { =x ; x base} licensee = { -k, -wh, …} licensor = {+k, +K, +wh, +WH, …}

merge A pair of trees, belongs to the domain of merge iff has the feature =x and has the feature x for some x base. merge(, ) = [ <, ] if has only one node merge(, ) = [ >, ] if has more than one node : - {=x} and : - {x} « has the feature f » : the first element of the sequence which labels s head is f

projections, heads… When two constituants are merged, one of them « projects over » the other, we write: x < y for « x projects over y » x is head of y if: –y leaf and x = y –or : x is head of some z which projects over all its sisters

move belongs to the domain of move iff has the feature +y and has exactly one maximal subtree 0 which has the feature –y move( ) = [ > 0, ] where 0 is 0 – {-y} and is - {+y} and 0 is replaced by a featureless node if y is strong and with only the phonetic features if it is weak. maximal : his root is the maximal projection of some head

Example (Stabler 97) Lexicon: d –k maria =n d –k some n student =d +k =d v speaks =v +K t =t c d –k quechua =n d –k every n language =c +k =d v believes =t c -k

=n d –k every n language Merge

d –k every language <

d –k every language < =d +k =d v speaks

–k every language < +k =d v speaks <

–k every language < +k =d v speaks < Move

–k every language < +k =d v speaks < Move –k every language <

every language < =d v speaks < Move >

(every) (language) < =d v speaks < > /every//language/ LF : (some linguist)(every language)(speaks) PF: /some linguist speaks every language/

merge {Peter} {smoke} (sans tenir compte du temps) n /peter/=n v /smoke/

merge {Peter} {smoke} /peter/ v /smoke/

merge {Peter} {smoke} Type driven interpretation /peter/ e v /smoke/ e t t

merge {Peter} {smoke}(without tense) Type driven interpretation /peter/ e v /smoke/ e t x. smoke(x) t smoke(p*) p*

Merge principle Two expressions can merge only if their semantical types allow it : –If and are expressions, if has the type of a function the domain of which contains, then they can merge and the resulting expression is such that: [[ ]] = [[ ]]([[ ]]) (with the resulting type)

move personne que Pierre admire N NCP C IPC Pierre admire t personne que

move personne que Pierre admire : – x. [personne(x) admire(pierre, x)] Hypothesis (Heim & Kratzer): –every trace translates into an e-type variable (if an NP is moved) Pierre admire t : –admire(pierre, x n )

move personne que Pierre admire N NCP P. x. [P(x) admire(pierre, x)] C IPC Pierre admire t personne que admire(pierre, x)

move personne que Pierre admire N NCP P. x. [P(x) admire(pierre, x)] C IPC Pierre admire t personne que admire(pierre, x) U. P. x. [P(x) U(x)]

move personne que Pierre admire N NCP P. x. [P(x) admire(pierre, x)] C IPC Pierre admire t personne que admire(pierre, x) U. P. x. [P(x) U(x)] ?

types N NCP P. x. [P(x) admire(pierre, x)] C IPC Pierre admire t personne que admire(pierre, x) U. P. x. [P(x) U(x)] t,, >>

types N NCP P. x. [P(x) admire(pierre, x)] C IPC Pierre admire t personne que admire(pierre, x) U. P. x. [P(x) U(x)] t,, >> mismatch

types C IPC Pierre admire t admire(pierre, x) t N NCP P. x. [P(x) admire(pierre, x)] personne que U. P. x. [P(x) U(x)],, >> Abstraction step

types C IPC Pierre admire t admire(pierre, x) t N NCP P. x. [P(x) admire(pierre, x)] personne que U. P. x. [P(x) U(x)],, >> x. admire(pierre, x)

Move principle Let [+f] a tree which has the feature +f, and which contains only one maximal subtree [-f]*, therefore of semantics [[ (x )]], where x is a variable representing. Let the tree obtained by moving out of, then: [[ ]] = [[ ]]( x. [[ (x )]][x /x]), if there is no further expected move of. If there are expected moves of (other licensees –f in it), [[ ]] = ( x. [[ (x )]][x /x])(y) where y is a fresh variable

example Quel bus tu prends? Lexicon: –bus : n /bus/ x.bus(x) –quel : =n d –wh /quel/ P. Q.[quel x P(x) Q(x)] –tu : d /tu/ tu –prends : =d =d v /prends/ x. y.monte-dans(y, x) –=v t –=t +WH c

=n d –wh /quel/ P. Q.[quel x P(x) Q(x)] n /bus/ x.bus(x)

d –wh /quel/ P. Q.[quel x P(x) Q(x)] /bus/ x.bus(x) merge <

d –wh /quel/ /bus/ merge < Q.[quel x bus(x) Q(x)]

=d =d v /prends/ x. y.monte-dans(y, x) d -wh /quel//bus/ x bus, merge

=d v /prends/ -wh /quel//bus/ merge < y.monte-dans(y, x bus )

=d v /prends/ -wh /quel//bus/ merge < y.monte-dans(y, x bus ) > d /tu/ tu

v /prends/ -wh /quel//bus/ merge < > /tu/ monte-dans(tu, xbus )

v /prends/ -wh /quel//bus/ merge < > /tu/ monte-dans(tu, xbus ) < =v t

/prends/ -wh /quel//bus/ merge < > /tu/ monte-dans(tu, xbus ) < t

/prends/ -wh /quel//bus/ merge < > /tu/ monte-dans(tu, xbus ) < t < =t +WH c

/prends/ -wh /quel//bus/ merge < > /tu/ monte-dans(tu, xbus ) < < +WH c

/prends/ -wh /quel//bus/ move < > /tu/ monte-dans(tu, xbus ) < < +WH c >

/prends/ /quel//bus/ move < > /tu/ monte-dans(tu, xbus ) < < c >

/prends/ move < > /tu/ < < c /quel//bus/ > u. monte-dans(tu, u ) Q.[quel x bus(x) Q(x)]

/prends/ move < > /tu/ < < c /quel//bus/ > [quel x bus(x) monte-dans(tu, x )]

conclusion Syntax and semantic cooperate : –merge and move drive semantical operations (application and abstraction) –semantical typing selects the correct derivations (« objects » go to accusatives, « subjects » to nominatives) Similarities with type-logical grammars : –resource consumption logic –Curry-Howard homomorphism

Passive voice seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> e) Mary :: d -k by :: =d +obl V= v, >> z. u. y.agent(u(y), z)

=d v d –k e /seen/ seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> e) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

v –k e seen(x) /seen/ seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

v –k e seen(x) =v +NOM infl /seen/ /was/ seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

–k e seen(x) +NOM infl /seen/ /was/ seen(x) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

seen(x) +NOM infl /seen/ /was/ seen(x) -k /Paul/ seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

seen(x) infl /seen/ /was/ seen(x) /Paul/ seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

e seen(x) infl /seen/ /was/ seen(x) /Paul/ x.seen(x) P. P(paul) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

e seen(x) infl /seen/ /was/ seen(x) /Paul/ x.seen(x) P. P(paul) seen(Paul) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

=d +obl V= v d –k /by/ /Mary/ seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

+obl V= v –k /by/ /Mary/ seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

+obl V= v /by/ -k /Mary/ (Mary) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

V= v /by/ /Mary/ (Mary) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

V= v /by/ /Mary/ v –k e /seen/ (Mary) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

v /by/ /Mary/ –k e /seen/ (Mary) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

v /by/ /Mary/ –k e /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

v /by/ /Mary/ –k x e /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) y.agent(seen(y), mary) agent(seen(x), mary) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

v /by/ /Mary/ –k x e /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) y.agent(seen(y), mary) =v +NOM infl /was/ agent(seen(x), mary) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

/by/ /Mary/ –k x e /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) y.agent(seen(y), mary) +NOM infl /was/ agent(seen(x), mary) seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

/by/ /Mary/ /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) y.agent(seen(y), mary) +NOM infl /was/ agent(seen(x), mary) -k /Paul/ x seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

/by/ /Mary/ /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) y.agent(seen(y), mary) infl /was/ agent(seen(x), mary) /Paul/ x. agent(seen(x), mary) x seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

/by/ /Mary/ /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) y.agent(seen(y), mary) infl /was/ agent(seen(x), mary) /Paul/ x. agent(seen(x), mary) P. P(paul) x seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)

/by/ /Mary/ /seen/ (Mary) u. y.agent(u(y), mary) x. seen(x) y.agent(seen(y), mary) infl /was/ agent(seen(x), mary) /Paul/ x. agent(seen(x), mary) P. P(paul) agent(seen(paul), mary) x seen :: =d v x. seen(x) was :: =v +NOM infl Paul :: d –k (, t> t) Mary :: d -k by :: =d +obl V= V, >> z. u. y.agent(u(y), z)