Minimalist Machine Derivations

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

Examples:

  • Explaining TH/EX (Sobin, ms.) and TH/EX, Agreement, and Case in Expletive Sentences (Sobin, 2014). collapse
    Example Instruction stream (clickable) Notes
    (1c) There was a book taken from the shelf
    *There was taken a book from the shelf
    [shelf, the, from, [book, a], take, prt, 'v~', there, 'Tpast', c] TH/EX: a book raises to edge of PRT.
    (1d) There was a book being taken from the shelf
    *There was being a book taken from the shelf
    ?There was being taken a book from the shelf
    [shelf, the, from, [book, a], take, prt, 'v~', prog, 'v~', there, 'Tpast', c] TH/EX: a book raises to edge of progressive be.
    (4a) There was a book about the war taken from the shelf
    *There was taken a book about the war from the shelf
    [shelf, the, from, [war, the, about, book, a], take, prt, 'v~', there, 'Tpast', c] TH/EX: a book about the war raises to edge of PRT.
    (4b) *What was there a book about taken from the shelf
    *What was there taken a book about from the shelf
    [shelf, the, from, [what:n, q, about, book, a], take, prt, 'v~', there, 'Tpast', c_Q] what cannot be extracted because it is formed in the substream for a book about what and merged with from.
    By substream subsumption: what is deleted.
    (4c) *What was there taken from the shelf [shelf, the, from, [what:n, q], take, prt, 'v~', there, 'Tpast', c_Q] Derivation converges (incorrectly).
    [c_Q] is not blocked from targeting what.
    (13a) There is someone laughing
    (10a) *There laughed someone
    [laugh, v_unerg, [someone, d], prog, 'v~', there, 'T', c] Unergative laugh.
    Leftwards TH/EX not visible.
    (10b) *There watched someone a flying saucer
    (13b) There is someone watching a flying saucer
    [saucer, flying, a, watch, 'v*', [someone, d], prog, 'v~', there, 'T', c] TH/EX: someone raises to edge of progressive be
    (10c) *There fell a book on the floor
    (13c) There is a book falling on the floor
    [book, a, fall, caus, prog, 'v~', there, 'T', c] No visible TH/EX: assume caus selects for inchoative verbal root fall.
    (10d) There arrived a train
    *There a train arrived
    [train, a, arrive, 'v~unacc', there, 'Tpast', c] No TH/EX.
    (1b) There is a train arriving
    *There is arriving a train
    [train, a, arrive, 'v~unacc', prog, 'v~', there, 'T', c] TH/EX: a train raises to edge of progressive be
    (12) A train arrived [train, a, arrive, 'v~unacc', 'Tpast', c]
    (22) There was someone arrested
    *There was arrested someone
    [someone, d, arrest, prt, 'v~', there, 'Tpast', c] TH/EX: passive expletive.
    (23) There was someone being arrested
    *There was being someone arrested
    *There was being arrested someone
    [someone, d, arrest, prt, 'v~', prog, 'v~', there, 'Tpast', c] TH/EX: someone raises to edge of progressive be.
    (26a) There has arrived a train
    (24a) *There has a train arrived
    [train, a, arrive, 'v~unacc', there, perf, v, 'T', c] TH/EX: perfective expletive unaccusative.
    (26b) a train has arrived [train, a, arrive, 'v~unacc', perf, v, 'T', c] Perfective unaccusative.
    (17a) *There has someone laughed [laugh, v_unerg, [someone, d], perf, v, there, 'T', c] Derivation crashes.
    No place to merge there.
    (17b) Someone has laughed [laugh, v_unerg, [someone, d], perf, v, 'T', c]
    (17c) There has been someone laughing
    *There has someone been laughing
    [laugh, v_unerg, [someone, d], prog, 'v~', there, perf, v, 'T', c] TH/EX: someone raises to edge of progressive be
    (22a) There is a book available [book, a, available, a_, 'v~', there, 'T', c] v~ selects for stage-level predicate available.
    (22b) A book is available [book, a, available, a_, 'v~', 'T', c]
    (21a) One book was tiny [[book, one], tiny, v_be, 'Tpast', c] vbe directly selects for the individual-level predicate tiny.
    (21b) *?There was one book tiny [[book, one], tiny, v_be, there, 'Tpast', c] Does not converge.
    vbe has an edge that is filled preferentially from the stack.
    vbe merges TOS one book (not stream there).
    [Note: default policy is to prefer the stream over the stack, i.e. merge over move. The policy can be overridden from the lexicon.]
    (24a) There is a problem [problem, a, be, v_ex, there, 'T', c] [v_ex]: obligatory there-insertion.
    (24b) *A problem is [problem, a, be, v_ex, 'T', c] Derivation crashes.
    Obligatory there-insertion.
    (27a) *There was taken [take, prt, 'v~', there, 'Tpast', c] Derivation crashes.
    PRT is a probe but the stack is empty
    (27b) *There was taken a book [book, a, take, prt, there, 'v~', 'Tpast', c] Derivation crashes.
    In a passive expletive construction: TH/EX is obligatory.
    v~ finds non-theta there.
    (27c) There was a book taken [book, a, take, prt, 'v~', there, 'Tpast', c] TH/EX: passive expletive construction.
    a book raises to edge of PRT.
    (27d) A book was taken [book, a, take, prt, 'v~', 'Tpast', c]
    (51a) We believe there to be a book available [book, a, available, a_, 'v~', there, 'Tinf', believe, 'v*', [we, d], 'T', c]
    (51b) There seems to be a book available [book, a, available, a_, 'v~', there, 'Tinf', seem, v_nop, 'T', c]
    (51c) A book seems to be available [book, a, available, a_, 'v~', 'Tinf', seem, v_nop, 'T', c]
  • Machine Parameters: expand

    Animation:
    (1d) There was a book being taken from the shelf
    *There was being a book taken from the shelf
    ?There was being taken a book from the shelf

    Derivation:
    (1d) There was a book being taken from the shelf
    *There was being a book taken from the shelf
    ?There was being taken a book from the shelf

    Stream:[[shelf!D],[the!case!N],[from],[[book!D],[a!case!N]],[take],[prt!phi!case],[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[]

    Step 1.

    Head of stream [shelf!D] is the initial SO
    Stream:[[the!case!N],[from],[[book!D],[a!case!N]],[take],[prt!phi!case],[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[shelf!D]

    Step 2.

    Merge [the!case!N] and [shelf!D]
    Label from [the!case!N] (head with an unvalued uF)
    Inherit interpretable feature(s) [f(phi,[3,sg,n])] from [shelf!D]
    [the!case!N] values D on [shelf!D]
    [shelf] values N on [the!case!N]
    Stream:[[from],[[book!D],[a!case!N]],[take],[prt!phi!case],[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[the!case[the][shelf]]

    Step 3.

    Merge [from] and [the!case[the][shelf]]
    Label from [from] (head merging with a non-head)
    Theta-mark [the!case[the][shelf]]
    [from] values obq case on [the!case[the][shelf]]
    Stream:[[[book!D],[a!case!N]],[take],[prt!phi!case],[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[from[from][the[the][shelf]]]

    Step 4.

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

    Step 5.

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

    Step 6.

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

    Step 7.

    Stream:[[a!case[a][book]],[take],[prt!phi!case],[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):
    SO:[from[from][the[the][shelf]]]

    Step 8.

    Merge [from[from][the[the..][shelf..]]] and [a!case[a][book]]
    Label from [from[from][the[the..][shelf..]]] (edge feature)
    Theta-mark [a!case[a][book]]
    Push [a!case[a][book]] (unvalued uF) onto stack
    Stream:[[take],[prt!phi!case],[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[from[a!case[a][book]][from[from][the[the][shelf]]]]

    Step 9.

    Merge [take] and [from[a!case[a..][book..]][from[from..][the..]]]
    Label from [take] (head merging with a non-head)
    Stream:[[prt!phi!case],[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[take[take][from[a!case[a][book]][from[from][the[the][shelf]]]]]

    Step 10.

    Merge [prt!phi!case] and [take[take][from[a..][from..]]]
    Label from [prt!phi!case] (head merging with a non-head)
    [a!case[a][book]] values uPhi on [prt!phi!case]
    Unified case feature on [prt!case] and [a!case[a][book]]
    Stream:[[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[prt[prt][take[take][from[a!case[a][book]][from[from][the[the][shelf]]]]]]

    Step 11.

    Internal merge selected
    Merge [prt[prt][take[take..][from..]]] and [a!case[a][book]]
    Label from [prt[prt][take[take..][from..]]] (edge feature)
    Stream:[[v~],[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[prt[a!case[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]

    Step 12.

    Merge [v~] and [prt[a!case[a..][book..]][prt[prt..][take..]]]
    Label from [v~] (head merging with a non-head)
    [v~] checks theta on [a!case[a][book]]
    Stream:[[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[v~[v~][prt[a!case[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]

    Step 13.

    Internal merge selected
    Merge [v~[v~][prt[a..][prt..]]] and [a!case[a][book]]
    Label from [v~[v~][prt[a..][prt..]]] (edge feature)
    Stream:[[prog],[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[v~[a!case[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]

    Step 14.

    Merge [prog] and [v~[a!case[a..][book..]][v~[v~..][prt..]]]
    Label from [prog] (head merging with a non-head)
    Stream:[[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[prog[prog][v~[a!case[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]

    Step 15.

    Internal merge selected
    Merge [prog[prog][v~[a..][v~..]]] and [a!case[a][book]]
    Label from [prog[prog][v~[a..][v~..]]] (edge feature)
    Stream:[[v~],[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[prog[a!case[a][book]][prog[prog][v~[a[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]]

    Step 16.

    Merge [v~] and [prog[a!case[a..][book..]][prog[prog..][v~..]]]
    Label from [v~] (head merging with a non-head)
    [v~] checks theta on [a!case[a][book]]
    Stream:[[there!phi],[Tpast!phi],[c]]
    Stack (⥥):[a!case[a][book]]
    SO:[v~[v~][prog[a!case[a][book]][prog[prog][v~[a[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]]]

    Step 17.

    Merge [v~[v~][prog[a..][prog..]]] and [there!phi]
    Label from [v~[v~][prog[a..][prog..]]] (edge feature)
    Push [there!phi] (unvalued uF) onto stack
    Stream:[[Tpast!phi],[c]]
    Stack (⥥):[there!phi]
    [a!case[a][book]]
    SO:[v~[there!phi][v~[v~][prog[a!case[a][book]][prog[prog][v~[a[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]]]]

    Step 18.

    Merge [Tpast!phi] and [v~[there!phi][v~[v~..][prog..]]]
    Label from [Tpast!phi] (head merging with a non-head)
    Unified phi feature on [Tpast!phi] and [there]
    [a!case[a][book]] values uPhi on [Tpast!phi]
    [Tpast] values nom case on [a!case[a][book]]
    Stream:[[c]]
    Stack (⥥):[there]
    [a[a][book]]
    SO:[Tpast[Tpast][v~[there][v~[v~][prog[a[a][book]][prog[prog][v~[a[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]]]]]

    Step 19.

    Internal merge selected
    Merge [Tpast[Tpast][v~[there..][v~..]]] and [there]
    Label from [Tpast[Tpast][v~[there..][v~..]]] (edge feature)
    Stream:[[c]]
    Stack (⥥):[there]
    [a[a][book]]
    SO:[Tpast[there][Tpast[Tpast][v~[there][v~[v~][prog[a[a][book]][prog[prog][v~[a[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]]]]]]

    Step 20.

    Merge [c] and [Tpast[there][Tpast[Tpast..][v~..]]]
    Label from [c] (head merging with a non-head)
    Stream:[]
    Stack (⥥):[there]
    [a[a][book]]
    SO:[c[c][Tpast[there][Tpast[Tpast][v~[there][v~[v~][prog[a[a][book]][prog[prog][v~[a[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]]]]]]]

    Step 21.

    Local Extent boundary at [c[c][Tpast[there..][Tpast..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [there]
    [a[a][book]]
    SO:[c[c][Tpast[there][Tpast[Tpast][v~[there][v~[v~][prog[a[a][book]][prog[prog][v~[a[a][book]][v~[v~][prt[a[a][book]][prt[prt][take[take][from[a[a][book]][from[from][the[the][shelf]]]]]]]]]]]]]]]]

    Parse:
    Spell-out:
    there -ed(sg) be a book -ing be -en take from the shelf (after morpheme realization)
    there be -ed(sg) a book be -ing take -en from the shelf (after affix-hop)
    there be -ed(sg) a book be -ing take -en from the shelf (after morpheme realization, stage 2)
    there was a book being taken from the shelf  

    One derivation found.
    Computational Cost:
    Merge: 16, Agree: 10, Unify: 2, Push: 2, Boundaries: 1, Inject: 0
    Non-TOS access: 0, Pop: 0, Depth cost: 6
    Step:0123456789101112131415161718192021
    Stack depth:0000000011111111122223

    Back to top