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 do you think that saw John?
    Who do you think saw John?

    Derivation:
    *Who do you think that saw John?
    Who do you think saw John?

    Stream:[[john!D],[d!case!N],[see],[v*!phi],[[who!D],[q!case!N!scope]],[Tpast!phi],[ceQ!wh!T],[think],[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[]

    Step 1.

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

    Step 2.

    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:[[see],[v*!phi],[[who!D],[q!case!N!scope]],[Tpast!phi],[ceQ!wh!T],[think],[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[d!case[d][john]]

    Step 3.

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

    Step 4.

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

    Step 5.

    Begin substream
    Stream:[[who!D],[q!case!N!scope]]
    Stack (⥥):
    SO:[]

    Step 6.

    Head of stream [who!D] is the initial SO
    Stream:[[q!case!N!scope]]
    Stack (⥥):
    SO:[who!D]

    Step 7.

    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:[]
    Stack (⥥):
    SO:[q!case!scope[q!scope][who]]
    End substream, SO [q!case!scope[q!scope][who]] re-inserted into main stream

    Step 8.

    Stream:[[q!case!scope[q!scope][who]],[Tpast!phi],[ceQ!wh!T],[think],[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[d[d][john]]
    SO:[v*[v*][see[see][d[d][john]]]]

    Step 9.

    Merge [v*[v*][see[see..][d..]]] and [q!case!scope[q!scope][who]]
    Label from [v*[v*][see[see..][d..]]] (edge feature)
    Theta-mark [q!case!scope[q!scope][who]]
    Push [q!case!scope[q!scope][who]] (unvalued uF) onto stack
    Stream:[[Tpast!phi],[ceQ!wh!T],[think],[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!case!scope[q!scope][who]]
    [d[d][john]]
    SO:[v*[q!case!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]

    Step 10.

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

    Step 11.

    Internal merge selected
    Merge [Tpast[Tpast][v*[q..][v*..]]] and [q!scope[q!scope][who]]
    Label from [Tpast[Tpast][v*[q..][v*..]]] (edge feature)
    Stream:[[ceQ!wh!T],[think],[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    [d[d][john]]
    SO:[Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]

    Step 12.

    Merge [ceQ!wh!T] and [Tpast[q!scope[q..][who..]][Tpast[Tpast..][v*..]]]
    Label from [ceQ!wh!T] (head merging with a non-head)
    [q!scope[q!scope][who]] values wh on [ceQ!wh!T]
    [q!scope[q!scope][who]] values T on [ceQ!T] (economy)
    Internal merge selected
    Merge [ceQ[ceQ][Tpast[q..][Tpast..]]] and [q!scope[q!scope][who]]
    Label from [ceQ[ceQ][Tpast[q..][Tpast..]]] (edge feature)
    Stream:[[think],[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    [d[d][john]]
    SO:[ceQ[q!scope[q!scope][who]][ceQ[ceQ][Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]]]

    Step 13.

    Local Extent boundary at [ceQ[q!scope[q..][who..]][ceQ[ceQ..][Tpast..]]]
    Stack element [q!scope[q!scope][who]] with unvalued uF found
    New boundary (b) marker stacked
    Restack [q!scope[q!scope][who]] onto stack
    Stream:[[think],[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    b
    [d[d][john]]
    SO:[ceQ[q!scope[q!scope][who]][ceQ[ceQ][Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]]]

    Step 14.

    Merge [think] and [ceQ[q!scope[q..][who..]][ceQ[ceQ..][Tpast..]]]
    Label from [think] (head merging with a non-head)
    Theta-mark [ceQ[q!scope[q..][who..]][ceQ[ceQ..][Tpast..]]]
    Stream:[[vunerg],[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    b
    [d[d][john]]
    SO:[think[think][ceQ[q!scope[q!scope][who]][ceQ[ceQ][Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]]]]

    Step 15.

    Merge [vunerg] and [think[think][ceQ[q..][ceQ..]]]
    Label from [vunerg] (head merging with a non-head)
    Stream:[[[you!D],[d!case!N]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    b
    [d[d][john]]
    SO:[vunerg[vunerg][think[think][ceQ[q!scope[q!scope][who]][ceQ[ceQ][Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]]]]]

    Step 16.

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

    Step 17.

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

    Step 18.

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

    Step 19.

    Stream:[[d!case[d][you]],[T!phi!v],[cQ!wh!T]]
    Stack (⥥):[q!scope[q!scope][who]]
    b
    [d[d][john]]
    SO:[vunerg[vunerg][think[think][ceQ[q!scope[q!scope][who]][ceQ[ceQ][Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]]]]]

    Step 20.

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

    Step 21.

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

    Step 22.

    Internal merge selected
    Merge [T[vunerg][T[T..][vunerg..]]] and [d[d][you]]
    Label from [T[vunerg][T[T..][vunerg..]]] (edge feature)
    Stream:[[cQ!wh!T]]
    Stack (⥥):[d[d][you]]
    [q!scope[q!scope][who]]
    b
    [d[d][john]]
    SO:[T[d[d][you]][T[vunerg][T[T][vunerg[d[d][you]][vunerg[vunerg][think[think][ceQ[q!scope[q!scope][who]][ceQ[ceQ][Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]]]]]]]]]

    Step 23.

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

    Step 24.

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

    Backtrack

    Stream:[[cQ!wh!T]]
    Stack (⥥):[d[d][you]]
    [q!scope[q!scope][who]]
    b
    [d[d][john]]
    SO:[T[d[d][you]][T[vunerg][T[T][vunerg[d[d][you]][vunerg[vunerg][think[think][ceQ[q!scope[q!scope][who]][ceQ[ceQ][Tpast[q!scope[q!scope][who]][Tpast[Tpast][v*[q!scope[q!scope][who]][v*[v*][see[see][d[d][john]]]]]]]]]]]]]]]
    re-doing step 23

    Step 25.

    [cQ!T] attracts [T[d[d..][you..]][T[vunerg..][T..]]]
    Internal merge selected
    Merge [cQ[cQ][T[d..][T..]]] and [vunerg]
    Label from [cQ[cQ][T[d..][T..]]] (edge feature)
    Merge [cQ[vunerg][cQ[cQ..][T..]]] and [T]
    Label from [cQ[vunerg][cQ[cQ..][T..]]] (edge feature)
    [cQ] values uscope on [q!scope[q!scope][who]]
    Merge [cQ[T][cQ[vunerg..][cQ..]]] and [q[q][who]]
    Label from [cQ[T][cQ[vunerg..][cQ..]]] (edge feature)
    Stream:[]
    Stack (⥥):[d[d][you]]
    [q[q][who]]
    b
    [d[d][john]]
    SO:[cQ[q[q][who]][cQ[T][cQ[vunerg][cQ[cQ][T[d[d][you]][T[vunerg][T[T][vunerg[d[d][you]][vunerg[vunerg][think[think][ceQ[q[q][who]][ceQ[ceQ][Tpast[q[q][who]][Tpast[Tpast][v*[q[q][who]][v*[v*][see[see][d[d][john]]]]]]]]]]]]]]]]]]]

    Step 26.

    Local Extent boundary at [cQ[q[q..][who..]][cQ[T..][cQ..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [d[d][you]]
    [q[q][who]]
    b
    [d[d][john]]
    SO:[cQ[q[q][who]][cQ[T][cQ[vunerg][cQ[cQ][T[d[d][you]][T[vunerg][T[T][vunerg[d[d][you]][vunerg[vunerg][think[think][ceQ[q[q][who]][ceQ[ceQ][Tpast[q[q][who]][Tpast[Tpast][v*[q[q][who]][v*[v*][see[see][d[d][john]]]]]]]]]]]]]]]]]]]
    CI: wh-question

    Parse:
    Spell-out:
    who -re do you think -ed(sg) see -acc john (after morpheme realization)
    who do -re you think see -ed(sg) john -acc (after affix-hop)
    who do -re you think see -ed(sg) john -acc (after morpheme realization, stage 2)
    who do you think saw john  

    One derivation found.
    Computational Cost:
    Merge: 22, Agree: 18, Unify: 0, Push: 3, Boundaries: 3, Inject: 1
    Non-TOS access: 3, Pop: 0, Depth cost: 35
    Step:01234567891011121314151617181920212223242526
    Stack depth:000110001222233300034444545

    Back to top