Minimalist Machine Derivations

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

Examples:

  • On Phases (Chomsky, 2008): collapse
    Example Instruction stream (clickable) Notes
    (5)(ii) Of which car did they find the driver?
    Which car did they find the driver of?
    [car, which, of, driver, the, find, 'v*', [they, d], 'Tpast', c_Q] Optional pied-piping: two derivations.
    (6)(ii) *Of which car did the driver cause a scandal? [scandal, a, cause, 'v*', [car, which, of, driver, the],'Tpast', c_Q] Subject island.
    Crashes as cQ cannot access wh-DP which car. wh-DP on the stack is blocked by stack entry the driver of which car.
    Constraint: if [A .. [B ..]] is pushed onto the stack, and [B ..] from a substream is already on the stack, A subsumes B and renders B unavailable on the stack.
    [Implementation: a subconstituent check is performed whenever something is pushed on the stack. B is removed from the stack.]
    (7)(ii) Of which car was the driver awarded a prize?
    Which car was the driver of awarded a prize?
    [car, which, of, driver, the, [prize, a, 'G2'], award, prt, 'v~', 'Tpast', c_Q] Chomsky: Parallel extraction to edge of cQ and T.
    Implementation: assume pair-merge for the driver of which car (object) and a prize (adjunct).
    Assume also that the adjunct doesn't pied-pipe here.
    [Normally pair-merged SOs do move together. G2 has feature no_pied_pipe, which blocks it from being placed on the stack.]
    cQ targets of which car
    T targets TOS the driver of which car.
    Optional pied-piping: two derivations.
  • Machine Parameters: expand

    Animation:
    (7)(ii) Of which car was the driver awarded a prize?
    Which car was the driver of awarded a prize?

    Derivation:
    (7)(ii) Of which car was the driver awarded a prize?
    Which car was the driver of awarded a prize?

    Stream:[[car!D],[which!case!N!scope],[of],[driver!D],[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[]

    Step 1.

    Head of stream [car!D] is the initial SO
    Stream:[[which!case!N!scope],[of],[driver!D],[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[car!D]

    Step 2.

    Merge [which!case!N!scope] and [car!D]
    Label from [which!case!N!scope] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [car!D]
    [which!case!N!scope] values D on [car!D]
    [car] values N on [which!case!N!scope]
    Stream:[[of],[driver!D],[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[which!case!scope[which!scope][car]]

    Step 3.

    Merge [of] and [which!case!scope[which!scope][car]]
    Label from [of] (head merging with a non-head)
    Theta-mark [which!case!scope[which!scope][car]]
    [of] values obq case on [which!case!scope[which!scope][car]]
    Push [which!scope[which!scope][car]] (unvalued uF) onto stack
    Stream:[[driver!D],[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[which!scope[which!scope][car]]
    SO:[of[of][which!scope[which!scope][car]]]

    Step 4.

    Merge [driver!D] and [of[of][which!scope[which..][car..]]]
    Label from [driver!D] (head merging with a non-head)
    Stream:[[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[which!scope[which!scope][car]]
    SO:[driver!D[driver!D][of[of][which!scope[which!scope][car]]]]

    Step 5.

    Merge [the!case!N] and [driver!D[driver!D][of[of..][which..]]]
    Label from [the!case!N] (head merging with a non-head)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [driver!D[driver!D][of[of..][which..]]]
    [the!case!N] values D on [driver!D[driver!D][of[of..][which..]]]
    [driver[driver][of[of..][which..]]] values N on [the!case!N]
    Stream:[[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[which!scope[which!scope][car]]
    SO:[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]

    Step 6.

    Begin substream
    Stream:[[prize!D],[a!case!N],[G2]]
    Stack (⥥):
    SO:[]

    Step 7.

    Head of stream [prize!D] is the initial SO
    Stream:[[a!case!N],[G2]]
    Stack (⥥):
    SO:[prize!D]

    Step 8.

    Merge [a!case!N] and [prize!D]
    Label from [a!case!N] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [prize!D]
    [a!case!N] values D on [prize!D]
    [prize] values N on [a!case!N]
    Stream:[[G2]]
    Stack (⥥):
    SO:[a!case[a][prize]]

    Step 9.

    Merge [G2] and [a!case[a][prize]]
    Label from [G2] (head merging with a non-head)
    Theta-mark [a!case[a][prize]]
    [G2] values obq case on [a!case[a][prize]]
    Stream:[]
    Stack (⥥):
    SO:[G2[G2][a[a][prize]]]
    End substream, SO [G2[G2][a[a][prize]]] re-inserted into main stream

    Step 10.

    Stream:[[G2[G2][a[a][prize]]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[which!scope[which!scope][car]]
    SO:[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]

    Step 11.

    Pair-merge [G2[G2][a[a][prize]]] and [the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    Stream:[[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[which!scope[which!scope][car]]
    SO:<[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>

    Step 12.

    Merge [award] and <[the!case[the][driver[driver..][of..]]],[G2[G2][a[a..][prize..]]]>
    Label from [award] (head merging with a non-head)
    Theta-mark <[the!case[the][driver[driver..][of..]]],[G2[G2][a[a..][prize..]]]>
    Pair-merge adjunct [G2[G2][a[a..][prize..]]] does not pied-pipe
    Push [the!case[the][driver[driver..][of..]]] (unvalued uF) onto stack
    Stream:[[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[award[award]<[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]

    Step 13.

    Merge [prt!phi!case] and [award[award]<[the!case[the..][driver..]],[G2[G2..][a..]]>]
    Label from [prt!phi!case] (head merging with a non-head)
    [the!case[the][driver[driver..][of..]]] values uPhi on [prt!phi!case]
    Unified case feature on [prt!case] and [the!case[the][driver[driver..][of..]]]
    Stream:[[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[prt[prt][award[award]<[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]

    Step 14.

    Internal merge selected
    Merge [prt[prt][award[award..]<[the..],[G2..]>]] and [the!case[the][driver[driver..][of..]]]
    Label from [prt[prt][award[award..]<[the..],[G2..]>]] (edge feature)
    Stream:[[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[prt[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]

    Step 15.

    Merge [v~] and [prt[the!case[the..][driver..]][prt[prt..][award..]]]
    Label from [v~] (head merging with a non-head)
    [v~] checks theta on [the!case[the][driver[driver..][of..]]]
    Stream:[[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[v~[v~][prt[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]

    Step 16.

    Internal merge selected
    Merge [v~[v~][prt[the..][prt..]]] and [the!case[the][driver[driver..][of..]]]
    Label from [v~[v~][prt[the..][prt..]]] (edge feature)
    Stream:[[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[v~[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]

    Step 17.

    Merge [Tpast!phi!v] and [v~[the!case[the..][driver..]][v~[v~..][prt..]]]
    Label from [Tpast!phi!v] (head merging with a non-head)
    [the!case[the][driver[driver..][of..]]] values uPhi on [Tpast!phi!v]
    [Tpast!v] values nom case on [the!case[the][driver[driver..][of..]]]
    Relativized TOS search for iF(v) skipping [the[the][driver[driver..][of..]]]
    Relativized TOS search for iF(v) skipping [which!scope[which!scope][car]]
    [Tpast!v] attracts [v~[the[the..][driver..]][v~[v~..][prt..]]]
    Merge [Tpast[Tpast][v~[the..][v~..]]] and [v~]
    Label from [Tpast[Tpast][v~[the..][v~..]]] (edge feature)
    Stream:[[cQ!wh!T]]
    Stack (⥥):[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]

    Step 18.

    Internal merge selected
    Merge [Tpast[v~][Tpast[Tpast..][v~..]]] and [the[the][driver[driver..][of..]]]
    Label from [Tpast[v~][Tpast[Tpast..][v~..]]] (edge feature)
    Stream:[[cQ!wh!T]]
    Stack (⥥):[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[Tpast[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]

    Step 19.

    Merge [cQ!wh!T] and [Tpast[the[the..][driver..]][Tpast[v~..][Tpast..]]]
    Label from [cQ!wh!T] (head merging with a non-head)
    Relativized TOS search for iF(wh) skipping [the[the][driver[driver..][of..]]]
    [which!scope[which!scope][car]] values wh on [cQ!wh!T]
    [the[the][driver[driver..][of..]]] values T on [cQ!T]
    Internal merge selected
    Merge [cQ[cQ][Tpast[the..][Tpast..]]] and [the[the][driver[driver..][of..]]]
    Label from [cQ[cQ][Tpast[the..][Tpast..]]] (edge feature)
    [cQ] values uscope on [which!scope[which!scope][car]]
    Merge [cQ[the[the..][driver..]][cQ[cQ..][Tpast..]]] and [which[which][car]]
    Label from [cQ[the[the..][driver..]][cQ[cQ..][Tpast..]]] (edge feature)
    Stream:[]
    Stack (⥥):[the[the][driver[driver][of[of][which[which][car]]]]]
    [which[which][car]]
    SO:[cQ[which[which][car]][cQ[the[the][driver[driver][of[of][which[which][car]]]]][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]

    Step 20.

    Local Extent boundary at [cQ[which[which..][car..]][cQ[the..][cQ..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [the[the][driver[driver][of[of][which[which][car]]]]]
    [which[which][car]]
    SO:[cQ[which[which][car]][cQ[the[the][driver[driver][of[of][which[which][car]]]]][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]
    Conceptual-Intensional (CI) Interface: [cQ] + edge [[which[which][car]],[the[the][driver[driver][of[of][which[which][car]]]]]] constitutes an ill-formed interrogative!

    Backtrack

    Stream:[[cQ!wh!T]]
    Stack (⥥):[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [which!scope[which!scope][car]]
    SO:[Tpast[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]
    re-doing step 19

    Step 21.

    [cQ!T] attracts [Tpast[the[the..][driver..]][Tpast[v~..][Tpast..]]]
    Internal merge selected
    Merge [cQ[cQ][Tpast[the..][Tpast..]]] and [v~]
    Label from [cQ[cQ][Tpast[the..][Tpast..]]] (edge feature)
    Merge [cQ[v~][cQ[cQ..][Tpast..]]] and [Tpast]
    Label from [cQ[v~][cQ[cQ..][Tpast..]]] (edge feature)
    [cQ] values uscope on [which!scope[which!scope][car]]
    Merge [cQ[Tpast][cQ[v~..][cQ..]]] and [which[which][car]]
    Label from [cQ[Tpast][cQ[v~..][cQ..]]] (edge feature)
    Stream:[]
    Stack (⥥):[the[the][driver[driver][of[of][which[which][car]]]]]
    [which[which][car]]
    SO:[cQ[which[which][car]][cQ[Tpast][cQ[v~][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]]

    Step 22.

    Local Extent boundary at [cQ[which[which..][car..]][cQ[Tpast..][cQ..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [the[the][driver[driver][of[of][which[which][car]]]]]
    [which[which][car]]
    SO:[cQ[which[which][car]][cQ[Tpast][cQ[v~][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]]
    CI: wh-question

    Parse:
    Spell-out:
    which car -ed(sg) be the driver of -en award a prize (after morpheme realization)
    which car be -ed(sg) the driver of award -en a prize (after affix-hop)
    which car be -ed(sg) the driver of award -en a prize (after morpheme realization, stage 2)
    which car was the driver of awarded a prize  

    Backtrack

    Stream:[[of],[driver!D],[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):
    SO:[which!case!scope[which!scope][car]]
    re-doing step 3

    Step 23.

    Push [of[of][which!scope[which..][car..]]] (unvalued uF) onto stack
    Stream:[[driver!D],[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[of[of][which!scope[which!scope][car]]]
    SO:[of[of][which!scope[which!scope][car]]]

    Step 24.

    Merge [driver!D] and [of[of][which!scope[which..][car..]]]
    Label from [driver!D] (head merging with a non-head)
    Stream:[[the!case!N],[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[of[of][which!scope[which!scope][car]]]
    SO:[driver!D[driver!D][of[of][which!scope[which!scope][car]]]]

    Step 25.

    Merge [the!case!N] and [driver!D[driver!D][of[of..][which..]]]
    Label from [the!case!N] (head merging with a non-head)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [driver!D[driver!D][of[of..][which..]]]
    [the!case!N] values D on [driver!D[driver!D][of[of..][which..]]]
    [driver[driver][of[of..][which..]]] values N on [the!case!N]
    Stream:[[[prize!D],[a!case!N],[G2]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[of[of][which!scope[which!scope][car]]]
    SO:[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]

    Step 26.

    Begin substream
    Stream:[[prize!D],[a!case!N],[G2]]
    Stack (⥥):
    SO:[]

    Step 27.

    Head of stream [prize!D] is the initial SO
    Stream:[[a!case!N],[G2]]
    Stack (⥥):
    SO:[prize!D]

    Step 28.

    Merge [a!case!N] and [prize!D]
    Label from [a!case!N] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [prize!D]
    [a!case!N] values D on [prize!D]
    [prize] values N on [a!case!N]
    Stream:[[G2]]
    Stack (⥥):
    SO:[a!case[a][prize]]

    Step 29.

    Merge [G2] and [a!case[a][prize]]
    Label from [G2] (head merging with a non-head)
    Theta-mark [a!case[a][prize]]
    [G2] values obq case on [a!case[a][prize]]
    Stream:[]
    Stack (⥥):
    SO:[G2[G2][a[a][prize]]]
    End substream, SO [G2[G2][a[a][prize]]] re-inserted into main stream

    Step 30.

    Stream:[[G2[G2][a[a][prize]]],[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[of[of][which!scope[which!scope][car]]]
    SO:[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]

    Step 31.

    Pair-merge [G2[G2][a[a][prize]]] and [the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    Stream:[[award],[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[of[of][which!scope[which!scope][car]]]
    SO:<[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>

    Step 32.

    Merge [award] and <[the!case[the][driver[driver..][of..]]],[G2[G2][a[a..][prize..]]]>
    Label from [award] (head merging with a non-head)
    Theta-mark <[the!case[the][driver[driver..][of..]]],[G2[G2][a[a..][prize..]]]>
    Pair-merge adjunct [G2[G2][a[a..][prize..]]] does not pied-pipe
    Push [the!case[the][driver[driver..][of..]]] (unvalued uF) onto stack
    Stream:[[prt!phi!case],[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[award[award]<[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]

    Step 33.

    Merge [prt!phi!case] and [award[award]<[the!case[the..][driver..]],[G2[G2..][a..]]>]
    Label from [prt!phi!case] (head merging with a non-head)
    [the!case[the][driver[driver..][of..]]] values uPhi on [prt!phi!case]
    Unified case feature on [prt!case] and [the!case[the][driver[driver..][of..]]]
    Stream:[[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[prt[prt][award[award]<[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]

    Step 34.

    Internal merge selected
    Merge [prt[prt][award[award..]<[the..],[G2..]>]] and [the!case[the][driver[driver..][of..]]]
    Label from [prt[prt][award[award..]<[the..],[G2..]>]] (edge feature)
    Stream:[[v~],[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[prt[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]

    Step 35.

    Merge [v~] and [prt[the!case[the..][driver..]][prt[prt..][award..]]]
    Label from [v~] (head merging with a non-head)
    [v~] checks theta on [the!case[the][driver[driver..][of..]]]
    Stream:[[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[v~[v~][prt[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]

    Step 36.

    Internal merge selected
    Merge [v~[v~][prt[the..][prt..]]] and [the!case[the][driver[driver..][of..]]]
    Label from [v~[v~][prt[the..][prt..]]] (edge feature)
    Stream:[[Tpast!phi!v],[cQ!wh!T]]
    Stack (⥥):[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[v~[the!case[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]

    Step 37.

    Merge [Tpast!phi!v] and [v~[the!case[the..][driver..]][v~[v~..][prt..]]]
    Label from [Tpast!phi!v] (head merging with a non-head)
    [the!case[the][driver[driver..][of..]]] values uPhi on [Tpast!phi!v]
    [Tpast!v] values nom case on [the!case[the][driver[driver..][of..]]]
    Relativized TOS search for iF(v) skipping [the[the][driver[driver..][of..]]]
    Relativized TOS search for iF(v) skipping [of[of][which!scope[which..][car..]]]
    [Tpast!v] attracts [v~[the[the..][driver..]][v~[v~..][prt..]]]
    Merge [Tpast[Tpast][v~[the..][v~..]]] and [v~]
    Label from [Tpast[Tpast][v~[the..][v~..]]] (edge feature)
    Stream:[[cQ!wh!T]]
    Stack (⥥):[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]

    Step 38.

    Internal merge selected
    Merge [Tpast[v~][Tpast[Tpast..][v~..]]] and [the[the][driver[driver..][of..]]]
    Label from [Tpast[v~][Tpast[Tpast..][v~..]]] (edge feature)
    Stream:[[cQ!wh!T]]
    Stack (⥥):[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[Tpast[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]

    Step 39.

    Merge [cQ!wh!T] and [Tpast[the[the..][driver..]][Tpast[v~..][Tpast..]]]
    Label from [cQ!wh!T] (head merging with a non-head)
    Relativized TOS search for iF(wh) skipping [the[the][driver[driver..][of..]]]
    [of[of][which!scope[which..][car..]]] values wh on [cQ!wh!T]
    [the[the][driver[driver..][of..]]] values T on [cQ!T]
    Internal merge selected
    Merge [cQ[cQ][Tpast[the..][Tpast..]]] and [the[the][driver[driver..][of..]]]
    Label from [cQ[cQ][Tpast[the..][Tpast..]]] (edge feature)
    [cQ] values uscope on [which!scope[which!scope][car]]
    Merge [cQ[the[the..][driver..]][cQ[cQ..][Tpast..]]] and [of[of][which[which..][car..]]]
    Label from [cQ[the[the..][driver..]][cQ[cQ..][Tpast..]]] (edge feature)
    Stream:[]
    Stack (⥥):[the[the][driver[driver][of[of][which[which][car]]]]]
    [of[of][which[which][car]]]
    SO:[cQ[of[of][which[which][car]]][cQ[the[the][driver[driver][of[of][which[which][car]]]]][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]

    Step 40.

    Local Extent boundary at [cQ[of[of..][which..]][cQ[the..][cQ..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [the[the][driver[driver][of[of][which[which][car]]]]]
    [of[of][which[which][car]]]
    SO:[cQ[of[of][which[which][car]]][cQ[the[the][driver[driver][of[of][which[which][car]]]]][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]
    Conceptual-Intensional (CI) Interface: [cQ] + edge [[of[of][which[which][car]]],[the[the][driver[driver][of[of][which[which][car]]]]]] constitutes an ill-formed interrogative!

    Backtrack

    Stream:[[cQ!wh!T]]
    Stack (⥥):[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]]
    [of[of][which!scope[which!scope][car]]]
    SO:[Tpast[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which!scope[which!scope][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]
    re-doing step 39

    Step 41.

    [cQ!T] attracts [Tpast[the[the..][driver..]][Tpast[v~..][Tpast..]]]
    Internal merge selected
    Merge [cQ[cQ][Tpast[the..][Tpast..]]] and [v~]
    Label from [cQ[cQ][Tpast[the..][Tpast..]]] (edge feature)
    Merge [cQ[v~][cQ[cQ..][Tpast..]]] and [Tpast]
    Label from [cQ[v~][cQ[cQ..][Tpast..]]] (edge feature)
    [cQ] values uscope on [which!scope[which!scope][car]]
    Merge [cQ[Tpast][cQ[v~..][cQ..]]] and [of[of][which[which..][car..]]]
    Label from [cQ[Tpast][cQ[v~..][cQ..]]] (edge feature)
    Stream:[]
    Stack (⥥):[the[the][driver[driver][of[of][which[which][car]]]]]
    [of[of][which[which][car]]]
    SO:[cQ[of[of][which[which][car]]][cQ[Tpast][cQ[v~][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]]

    Step 42.

    Local Extent boundary at [cQ[of[of..][which..]][cQ[Tpast..][cQ..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [the[the][driver[driver][of[of][which[which][car]]]]]
    [of[of][which[which][car]]]
    SO:[cQ[of[of][which[which][car]]][cQ[Tpast][cQ[v~][cQ[cQ][Tpast[the[the][driver[driver][of[of][which[which][car]]]]][Tpast[v~][Tpast[Tpast][v~[the[the][driver[driver][of[of][which[which][car]]]]][v~[v~][prt[the[the][driver[driver][of[of][which[which][car]]]]][prt[prt][award[award]<[the[the][driver[driver][of[of][which[which][car]]]]],[G2[G2][a[a][prize]]]>]]]]]]]]]]]]
    CI: wh-question

    Parse:
    Spell-out:
    of which car -ed(sg) be the driver -en award a prize (after morpheme realization)
    of which car be -ed(sg) the driver award -en a prize (after affix-hop)
    of which car be -ed(sg) the driver award -en a prize (after morpheme realization, stage 2)
    of which car was the driver awarded a prize  

    2 derivations found.
    Computational Cost:
    Merge: 40, Agree: 29, Unify: 2, Push: 4, Boundaries: 4, Inject: 0
    Non-TOS access: 6, Pop: 0, Depth cost: 26
    Step:0123456789101112131415161718192021222324252627282930313233343536373839404142
    Stack depth:0001110000112222222232311100001122222222323

    Back to top