Abstract Categorial Grammar Parsing the general case in Honor of G - - PowerPoint PPT Presentation

abstract categorial grammar parsing
SMART_READER_LITE
LIVE PREVIEW

Abstract Categorial Grammar Parsing the general case in Honor of G - - PowerPoint PPT Presentation

1 ACG parsing: the general case Abstract Categorial Grammar Parsing the general case in Honor of G erard Huet Philippe de Groote Inria-Lorraine 2 ACG parsing: the general case Content 1 Definition of ACG 2 Examples 3 Some Key


slide-1
SLIDE 1

ACG parsing: the general case

1

Abstract Categorial Grammar Parsing

the general case

in Honor of G´ erard Huet

Philippe de Groote Inria-Lorraine

slide-2
SLIDE 2

ACG parsing: the general case

2

Content

1 Definition of ACG 2 Examples 3 Some Key Properties 4 Constructing a Parsing Algorithm

slide-3
SLIDE 3

ACG parsing: the general case

3

Definition

slide-4
SLIDE 4

ACG parsing: the general case

4

Motivations

  • To provide a type-theoretic notion of grammar, taking advantages of

ideas by Curry and Lambek.

  • To provide a grammatical framework in which other existing grammat-

ical models may be encoded.

  • To see the parse-structures as first-class citizen.
  • To allow the user to define grammatical composition combinators.
  • To base the formalism on a small set of mathematical primitives that

combine via simple composition rules.

slide-5
SLIDE 5

ACG parsing: the general case

5

Types, signatures and λ-terms

T (A) is the set of linear implicative types built on the set of atomic types A: T (A) ::= A | ( T (A) −

  • T (A) )

A higher-order linear signature is a triple Σ = A, C, τ, where: A is a finite set of atomic types; C is a finite set of constants; τ : C → T (A) is a function that assigns each constant in C with a linear implicative type built on A. Λ(Σ) denotes the set of linear λ-terms built upon a higher-order linear sig- nature Σ.

slide-6
SLIDE 6

ACG parsing: the general case

6

Vocabularies and Lexicons

A vocabulary is simply defined to be a higher-order linear signature. Given two vocabularies Σ1 = A1, C1, τ1 and Σ2 = A2, C2, τ2, a lexicon L = η, θ from Σ1 to Σ2 is made of two functions: η : A1 → T (A2), θ : C1 → Λ(Σ2), such that −Σ2 θ(c) : η(τ1(c)).

slide-7
SLIDE 7

ACG parsing: the general case

7

Definition

An abstract categorial grammar is a quadruple G = Σ1, Σ2, L, s where : Σ1 = A1, C1, τ1 and Σ2 = A2, C2, τ2 are two higher-order linear signa- tures; Σ1 is called the abstract vocabulary and Σ2 is called the object vocabulary; L : Σ1 → Σ2 is a lexicon from the abstract vocabulary to the object vocabulary; s ∈ T (A1) is a type of the abstract vocabulary; it is called the distin- guished type of the grammar.

slide-8
SLIDE 8

ACG parsing: the general case

8

Languages generated by an ACG

The abstract language generated by G (A(G)) is defined as follows: A(G) = {t ∈ Λ(Σ1) | −Σ1 t: s is derivable} The object language generated by G (O(G)) is defined to be the image of the abstract language by the term homomorphism induced by the lexicon L: O(G) = {t ∈ Λ(Σ2) | ∃u ∈ A(G). t = L(u)}

slide-9
SLIDE 9

ACG parsing: the general case

9

Some properties

  • Membership is decidable if and only if Multiplicative Exponential Linear

Logic is decidable.

  • Membership for lexicalized ACGs is NP-complete.
  • Membership for second-order ACGs is polynomial.
slide-10
SLIDE 10

ACG parsing: the general case

10

Examples

slide-11
SLIDE 11

ACG parsing: the general case

11

Strings as linear λ-terms

There is a canonical way of representing strings as linear λ-terms. It consists

  • f representing strings as function composition:

/abbac/ = λx. a (b (b (a (c x)))) In this setting: ǫ

= λx. x α + β

= λx. α (β x)

slide-12
SLIDE 12

ACG parsing: the general case

12

Signatures Σ0:

N , NP, S : type J : NP U : N A : N −

  • ((NP −
  • S) −
  • S)

S : ((NP −

  • S) −
  • S) −
  • (NP −
  • S)

Σ1:

a, John, seeks, unicorn : STRING

Σ2:

ι, o : type ∧ :

  • (o −
  • o)

∃ : (ι → o) −

  • o

j : ι unicorn : ι −

  • o

find : ι −

  • (ι −
  • o)

try : ι −

  • ((ι −
  • o) −
  • o)
slide-13
SLIDE 13

ACG parsing: the general case

13

Lexicons L1 : Σ0 → Σ1

N , NP, S := STRING J := /John/ U := /unicorn/ A := λx. λp. p (/a/ + x) S := λp. λx. p (λy. x + /seeks/ + y)

L2 : Σ0 → Σ2

N := i → o NP := i S :=

  • J

:= j U := λx. unicorn x A := λp. λq. ∃x. p x ∧ q x S := λp. λx. try x (λy. p (λz. find y z))

slide-14
SLIDE 14

ACG parsing: the general case

14 We have that: L1(S (A U) J) = /John/ + /seeks/ + /a/ + /unicorn/ L2(S (A U) J) = try j (λx. ∃y. unicorn y ∧ find x y) L1(A U (λx. S (λk. k x) J)) = /John/ + /seeks/ + /a/ + /unicorn/ L2(A U (λx. S (λk. k x) J)) = ∃y. unicorn y ∧ try j (λx. find x y)

slide-15
SLIDE 15

ACG parsing: the general case

15

A language-theoretic example

Abstract vocabulary: A, L, S : type H : (A −

  • A −
  • A −
  • S) −
  • S

I : L −

  • S

E : L C : A −

  • L −
  • L

Lexicon: A, L, S := string H := λf. f /a/ /b/ /c/ I := λf. λx. f x E := ǫ C := λx. λy. x + y Typically: H (λx11x12x13. H (λx21x22x23. . . . I (C xij (C xkl . . . (C xmn E) . . .)) . . .)) : S

slide-16
SLIDE 16

ACG parsing: the general case

16

Some Key Properties

slide-17
SLIDE 17

ACG parsing: the general case

17

Curry-Howard isomorphism Coherence theorem Principal typing Subject reduction Subject expansion

slide-18
SLIDE 18

ACG parsing: the general case

18

Constructing a Parsing Algorithm

slide-19
SLIDE 19

ACG parsing: the general case

19

Back to the example

H := λf. f (λz. a z) (λz. b z) (λz. c z) : (A −

  • A −
  • A −
  • S) −
  • S

I := λf. λx. f x : L −

  • S

E := λx. x : L C := λx. λy. λz. x (y z) : A −

  • L −
  • L

A, L, S := s −

  • s

λz. a (c (b (a (b (c z))))) ?

slide-20
SLIDE 20

ACG parsing: the general case

20

A first non deterministic algorithm

  • 1. Try to prove S using the types of the abstract constants as proper axioms.

I.e, prove S using (A −

  • A −
  • A −
  • S) −
  • S, L −
  • S, L, and A −
  • L −
  • L.
  • 2. By the Curry-Howard isomorphism, you have constructed a term of the

abstract language. Apply the lexicon to this term.

  • 3. Check whether the resulting object term is equal to the term you have

to parse.

slide-21
SLIDE 21

ACG parsing: the general case

21

The Coherence Theorem comes in

1. Specialize the object signature by distinguishing between the different

  • ccurrences of a same object constant in the term to be parsed:

a1 : s5 −

  • s6

a2 : s2 −

  • s3

b1 : s3 −

  • s4

b2 : s1 −

  • s2

c1 : s4 −

  • s5

c2 : s0 −

  • s1

λz. a1 (c1 (b1 (a2 (b2 (c2 z))))) : s0 −

  • s6
  • 2. Specialize the lexical entries accordingly:

λf. f (λz. a1 z) (λz. b1 z) (λz. c1 z) : · · · λf. f (λz. a1 z) (λz. b1 z) (λz. c2 z) : · · · . . . : . . .

slide-22
SLIDE 22

ACG parsing: the general case

22

  • 3. Try to prove S, s0 −
  • s6 using:

(A −

  • A −
  • A −
  • S) −
  • S,

((s5 −

  • s6) −
  • (s3 −
  • s4) −
  • (s4 −
  • s5) −
  • (s0 −
  • s0)) −
  • (s0 −
  • s0)

(A −

  • A −
  • A −
  • S) −
  • S,

((s5 −

  • s6) −
  • (s3 −
  • s4) −
  • (s4 −
  • s5) −
  • (s0 −
  • s1)) −
  • (s0 −
  • s1)

. . . (A −

  • A −
  • A −
  • S) −
  • S,

((s5 −

  • s6) −
  • (s3 −
  • s4) −
  • (s0 −
  • s1) −
  • (s0 −
  • s0)) −
  • (s0 −
  • s0)

(A −

  • A −
  • A −
  • S) −
  • S,

((s5 −

  • s6) −
  • (s3 −
  • s4) −
  • (s0 −
  • s1) −
  • (s0 −
  • s1)) −
  • (s0 −
  • s1)

. . . L −

  • S, (s0 −
  • s0) −
  • (s0 −
  • s0)

L −

  • S, (s0 −
  • s1) −
  • (s0 −
  • s1)

. . .

slide-23
SLIDE 23

ACG parsing: the general case

23

Eliminating redundancies

Consider the following pair: (A−

  • A−
  • A−
  • S)−
  • S, ((s5−
  • s6)−
  • (s3−
  • s4)−
  • (s4−
  • s5)−
  • (s0−
  • s0))−
  • (s0−
  • s0)

The shape of the specialized object type is completely specified by the

  • grammar. The only relevant information is given by the indices.

Replace the above pair by the following formula: (A[5, 6] −

  • A[3, 4] −
  • A[4, 5] −
  • S[0, 0]) −
  • S[0, 0]
slide-24
SLIDE 24

ACG parsing: the general case

24

Principal typing

Factorize the several formulas coming from a given lexical entry, (A[5, 6] −

  • A[3, 4] −
  • A[4, 5] −
  • S[0, 0]) −
  • S[0, 0]

(A[5, 6] −

  • A[3, 4] −
  • A[4, 5] −
  • S[0, 1]) −
  • S[0, 1]

. . . (A[5, 6] −

  • A[3, 4] −
  • A[0, 1] −
  • S[0, 0]) −
  • S[0, 0]

(A[5, 6] −

  • A[3, 4] −
  • A[0, 1] −
  • S[0, 1]) −
  • S[0, 1]

. . . as follows: a[i, j], b[k, l], c[m, n] ⊢ (A[i, j] −

  • A[k, l] −
  • A[m, n] −
  • S[o, p]) −
  • S[o, p]
slide-25
SLIDE 25

ACG parsing: the general case

25 We end up with the following proof search problem: Formulas coming from the lexicon: a[i, j], b[k, l], c[m, n] ⊢ (A[i, j] −

  • A[k, l] −
  • A[m, n] −
  • S[o, p]) −
  • S[o, p]

⊢ L[i, j] −

  • S[i, j]

⊢ L[i, i] ⊢ A[i, j] −

  • L[k, i] −
  • L[k, j]

Query (coming from the term to be parsed): a[5, 6], c[4, 5], b[3, 4], a[2, 3], b[1, 2], c[0, 1] ⊢ S[0, 6]

slide-26
SLIDE 26

ACG parsing: the general case

26

Correctness and Completeness

Correctness : by subject reduction. Completeness : by subject expansion.

slide-27
SLIDE 27

ACG parsing: the general case

27

The second-order case — Kanazawa’s original construction

  • Allow the lexicons to be compiled into datalog programs.
  • Polynomiality of 2nd-order ACGs.
  • Optimizations techniques are known.
  • CFG, TAG, LCFRS, ... as 2nd-order ACGs.