Minimalist Machine Derivations

Files: grammar.pl / m12.pl / Back to homepage

Examples:

  • T-to-C Movement: Causes and Consequences. Pesetsky & Torrego (2001). collapse
    Example Instruction stream (clickable) Notes
    (5a) What did Mary buy?
    (5b) *What Mary bought?
    [what:n, q, buy, 'v*', [mary, d], 'Tpast', c_Q] (5a) T to matrix C => do-support.
    (5b) Mary to edge C blocked (FI: exclamatory).
    (5c) *Who did buy the book?
    (5d) Who bought the book?
    [book, the, buy, 'v*', [who, q], 'Tpast', c_Q] No do-support triggered.
    (5c) ruled out by economy.
    (23) What will Mary buy? [what:n, q, buy, 'v*', [mary, d], will, 'T', c_Q] Auxilary will raises to edge of C.
    (24) What did John say that Mary will buy? [what:n, q, buy, 'v*', [mary, d], will, 'T', c_eQ, say, v_unerg, [john, d], 'Tpast', c_Q] Two derivations: (24) T to C realized as that.
    Or that can be omitted. c_eQ hosts wh-movement only.
    (28a) Who did John say will buy the book?
    (28b) *Who did John say that will buy the book?
    [book, the, buy, 'v*', [who, q], will, 'T', c_eQ, say, v_unerg, [john, d], 'Tpast', c_Q] That-trace effect.
    (28b) ruled out by economy.
    (31) Mary thinks that Sue will buy the book
    (33) Mary thinks Sue will buy the book
    [book, the, buy, 'v*', [sue, d], will, 'T', c_e, think, v_unerg, [mary, d], 'T', c] Two derivations: (31) T to embedded C (c_e) realized as that. (33) c_e attracts subject Sue
    (43a) *What a silly book did Mary buy!
    (43b) What a silly book Mary bought!
    [book, silly, a, what:d, q, buy, 'v*', [mary, d], 'Tpast', c_Q] (43a) T to C blocked by CI: exclamative.
    (43b) Mary in edge of C.
    (47a) Bill asked what Mary bought
    (47b) *Bill asked what did Mary buy
    (47c) *Bill asked what that Mary bought
    [what:n, q, buy, 'v*', [mary, d], 'Tpast', c_Qe, ask, v_unerg, [bill, d], 'Tpast', c] Interrogative embedded C does not support T displacement.
    Note: same parse derived twice.
    Extra test cases
    Who was John meeting? [who, q, meet, 'v*', [john, d], prog, 'v~', 'Tpast', c_Q] Object wh-movement. Auxiliary be pied-piping.
    Who was meeting John? [john, d, meet, 'v*', [who, q], prog, 'v~', 'Tpast', c_Q] Subject wh-movement. Auxiliary be pied-piping.
    *Who do you think that saw John?
    Who do you think saw John?
    [john, d, see, 'v*', [who, q], 'Tpast', c_eQ, think, 'v_unerg', [you, d], 'T', c_Q] That-trace effect.
    Economy: no T to C.
    Who do you think that John saw?
    Who do you think John saw?
    [who, q, see, 'v*', [john, d], 'Tpast', c_eQ, think, 'v_unerg', [you, d], 'T', c_Q] Two derivations.
    No that-trace effect with object.
  • Machine Parameters: expand

    Animation:
    Who was John meeting?

    Derivation:
    Who was John meeting?

    Stream:[[who!D],[q!case!N!scope],[meet],[v*!phi],[[john!D],[d!case!N]],[prog],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[]

    Step 1.

    Head of stream [who!D] is the initial SO
    Stream:[[q!case!N!scope],[meet],[v*!phi],[[john!D],[d!case!N]],[prog],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[who!D]

    Step 2.

    Merge [q!case!N!scope] and [who!D]
    Label from [q!case!N!scope] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [who!D]
    [q!case!N!scope] values D on [who!D]
    [who] values N on [q!case!N!scope]
    Stream:[[meet],[v*!phi],[[john!D],[d!case!N]],[prog],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[q!case!scope[q!scope][who]]

    Step 3.

    Merge [meet] and [q!case!scope[q!scope][who]]
    Label from [meet] (head merging with a non-head)
    Theta-mark [q!case!scope[q!scope][who]]
    Push [q!case!scope[q!scope][who]] (unvalued uF) onto stack
    Stream:[[v*!phi],[[john!D],[d!case!N]],[prog],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!case!scope[q!scope][who]]
    SO:[meet[meet][q!case!scope[q!scope][who]]]

    Step 4.

    Merge [v*!phi] and [meet[meet][q!case!scope[q..][who..]]]
    Label from [v*!phi] (head merging with a non-head)
    [q!case!scope[q!scope][who]] values uPhi on [v*!phi]
    [v*] values acc case on [q!case!scope[q!scope][who]]
    Stream:[[[john!D],[d!case!N]],[prog],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    SO:[v*[v*][meet[meet][q!scope[q!scope][who]]]]

    Step 5.

    Begin substream
    Stream:[[john!D],[d!case!N]]
    Stack (⥥):
    SO:[]

    Step 6.

    Head of stream [john!D] is the initial SO
    Stream:[[d!case!N]]
    Stack (⥥):
    SO:[john!D]

    Step 7.

    Merge [d!case!N] and [john!D]
    Label from [d!case!N] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [john!D]
    [d!case!N] values D on [john!D]
    [john] values N on [d!case!N]
    Stream:[]
    Stack (⥥):
    SO:[d!case[d][john]]
    End substream, SO [d!case[d][john]] re-inserted into main stream

    Step 8.

    Stream:[[d!case[d][john]],[prog],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    SO:[v*[v*][meet[meet][q!scope[q!scope][who]]]]

    Step 9.

    Merge [v*[v*][meet[meet..][q..]]] and [d!case[d][john]]
    Label from [v*[v*][meet[meet..][q..]]] (edge feature)
    Theta-mark [d!case[d][john]]
    Push [d!case[d][john]] (unvalued uF) onto stack
    Stream:[[prog],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[d!case[d][john]]
    [q!scope[q!scope][who]]
    SO:[v*[d!case[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]

    Step 10.

    Merge [prog] and [v*[d!case[d..][john..]][v*[v*..][meet..]]]
    Label from [prog] (head merging with a non-head)
    Stream:[[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[d!case[d][john]]
    [q!scope[q!scope][who]]
    SO:[prog[prog][v*[d!case[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]]

    Step 11.

    Internal merge selected
    Merge [prog[prog][v*[d..][v*..]]] and [d!case[d][john]]
    Label from [prog[prog][v*[d..][v*..]]] (edge feature)
    Stream:[[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[d!case[d][john]]
    [q!scope[q!scope][who]]
    SO:[prog[d!case[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]]]

    Step 12.

    Merge [v~] and [prog[d!case[d..][john..]][prog[prog..][v*..]]]
    Label from [v~] (head merging with a non-head)
    [v~] checks theta on [d!case[d][john]]
    Stream:[[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[d!case[d][john]]
    [q!scope[q!scope][who]]
    SO:[v~[v~][prog[d!case[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]]]]

    Step 13.

    Internal merge selected
    Merge [v~[v~][prog[d..][prog..]]] and [d!case[d][john]]
    Label from [v~[v~][prog[d..][prog..]]] (edge feature)
    Stream:[[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[d!case[d][john]]
    [q!scope[q!scope][who]]
    SO:[v~[d!case[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]]]]]

    Step 14.

    Merge [Tpast!phi!v] and [v~[d!case[d..][john..]][v~[v~..][prog..]]]
    Label from [Tpast!phi!v] (head merging with a non-head)
    [d!case[d][john]] values uPhi on [Tpast!phi!v]
    [Tpast!v] values nom case on [d!case[d][john]]
    Relativized TOS search for iF(v) skipping [d[d][john]]
    Relativized TOS search for iF(v) skipping [q!scope[q!scope][who]]
    [Tpast!v] attracts [v~[d[d..][john..]][v~[v~..][prog..]]]
    Merge [Tpast[Tpast][v~[d..][v~..]]] and [v~]
    Label from [Tpast[Tpast][v~[d..][v~..]]] (edge feature)
    Stream:[[cQ!wh!T]]
    Stack (⥥):[d[d][john]]
    [q!scope[q!scope][who]]
    SO:[Tpast[v~][Tpast[Tpast][v~[d[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]]]]]]]

    Step 15.

    Internal merge selected
    Merge [Tpast[v~][Tpast[Tpast..][v~..]]] and [d[d][john]]
    Label from [Tpast[v~][Tpast[Tpast..][v~..]]] (edge feature)
    Stream:[[cQ!wh!T]]
    Stack (⥥):[d[d][john]]
    [q!scope[q!scope][who]]
    SO:[Tpast[d[d][john]][Tpast[v~][Tpast[Tpast][v~[d[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]]]]]]]]

    Step 16.

    Merge [cQ!wh!T] and [Tpast[d[d..][john..]][Tpast[v~..][Tpast..]]]
    Label from [cQ!wh!T] (head merging with a non-head)
    Relativized TOS search for iF(wh) skipping [d[d][john]]
    [q!scope[q!scope][who]] values wh on [cQ!wh!T]
    [d[d][john]] values T on [cQ!T]
    Internal merge selected
    Merge [cQ[cQ][Tpast[d..][Tpast..]]] and [d[d][john]]
    Label from [cQ[cQ][Tpast[d..][Tpast..]]] (edge feature)
    [cQ] values uscope on [q!scope[q!scope][who]]
    Merge [cQ[d[d..][john..]][cQ[cQ..][Tpast..]]] and [q[q][who]]
    Label from [cQ[d[d..][john..]][cQ[cQ..][Tpast..]]] (edge feature)
    Stream:[]
    Stack (⥥):[d[d][john]]
    [q[q][who]]
    SO:[cQ[q[q][who]][cQ[d[d][john]][cQ[cQ][Tpast[d[d][john]][Tpast[v~][Tpast[Tpast][v~[d[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q[q][who]]]]]]]]]]]]]]]

    Step 17.

    Local Extent boundary at [cQ[q[q..][who..]][cQ[d..][cQ..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [d[d][john]]
    [q[q][who]]
    SO:[cQ[q[q][who]][cQ[d[d][john]][cQ[cQ][Tpast[d[d][john]][Tpast[v~][Tpast[Tpast][v~[d[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q[q][who]]]]]]]]]]]]]]]
    Conceptual-Intensional (CI) Interface: [cQ] + edge [[q[q][who]],[d[d][john]]] constitutes an ill-formed interrogative!

    Backtrack

    Stream:[[cQ!wh!T]]
    Stack (⥥):[d[d][john]]
    [q!scope[q!scope][who]]
    SO:[Tpast[d[d][john]][Tpast[v~][Tpast[Tpast][v~[d[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q!scope[q!scope][who]]]]]]]]]]]]
    re-doing step 16

    Step 18.

    [cQ!T] attracts [Tpast[d[d..][john..]][Tpast[v~..][Tpast..]]]
    Internal merge selected
    Merge [cQ[cQ][Tpast[d..][Tpast..]]] and [v~]
    Label from [cQ[cQ][Tpast[d..][Tpast..]]] (edge feature)
    Merge [cQ[v~][cQ[cQ..][Tpast..]]] and [Tpast]
    Label from [cQ[v~][cQ[cQ..][Tpast..]]] (edge feature)
    [cQ] values uscope on [q!scope[q!scope][who]]
    Merge [cQ[Tpast][cQ[v~..][cQ..]]] and [q[q][who]]
    Label from [cQ[Tpast][cQ[v~..][cQ..]]] (edge feature)
    Stream:[]
    Stack (⥥):[d[d][john]]
    [q[q][who]]
    SO:[cQ[q[q][who]][cQ[Tpast][cQ[v~][cQ[cQ][Tpast[d[d][john]][Tpast[v~][Tpast[Tpast][v~[d[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q[q][who]]]]]]]]]]]]]]]]

    Step 19.

    Local Extent boundary at [cQ[q[q..][who..]][cQ[Tpast..][cQ..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [d[d][john]]
    [q[q][who]]
    SO:[cQ[q[q][who]][cQ[Tpast][cQ[v~][cQ[cQ][Tpast[d[d][john]][Tpast[v~][Tpast[Tpast][v~[d[d][john]][v~[v~][prog[d[d][john]][prog[prog][v*[d[d][john]][v*[v*][meet[meet][q[q][who]]]]]]]]]]]]]]]]
    CI: wh-question

    Parse:
    Spell-out:
    who -ed(sg) be john -ing meet (after morpheme realization)
    who be -ed(sg) john meet -ing (after affix-hop)
    who be -ed(sg) john meet -ing (after morpheme realization, stage 2)
    who was john meeting  

    One derivation found.
    Computational Cost:
    Merge: 18, Agree: 13, Unify: 0, Push: 2, Boundaries: 2, Inject: 0
    Non-TOS access: 3, Pop: 0, Depth cost: 13
    Step:012345678910111213141516171819
    Stack depth:00011000122222222323

    Back to top