Minimalist Machine Derivations

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

Examples:

  • Modeling of Coreference Relations in Multi-Object Constructions. (Fong & Ginsburg, 2012b). collapse
    Example Instruction stream (clickable) Notes
    (2)(a) I showed John1 himself1 in the mirror [john, d, he, self, 'G', [mirror, the, in], show, 'v*', [i, d], 'Tpast', c] Determiner self heads a Local Extent (LE).
    Doubling constituent (DC) self-he-John triggers stacking of John.
    TOS John is merged to the edge of G.
    (2)(b) I showed John1 to himself1 in the mirror [john, d, he, self, to:p, [mirror, the, in], show, 'v*', [i, d], 'Tpast', c] (Same as (2a) but (2b) uses the lexical counterpart to G.)
    (3)(b) *I showed himself1 John1 in the mirror [john, d, he, self, 'G', [mirror, the, in], show, 'v*', [i, d], 'Tpast', c] Cannot be derived.
    DC is he-John, cannot be John-he
    (John-he would result in stacking he and deriving Condition C violations.)
    Therefore the stream is the same as for (2a).
    (16)(a) *I showed John1 him1 in the mirror [john, d, he, d, 'G', [mirror, the, in], show, 'v*', [i, d], 'Tpast', c] Does not converge.
    DC he-John.
    John not on the stack, not available for G theta-merge.
    (No LE boundary, no stacking triggered.)
    (16)(b) *I showed John1 to him1 in the mirror [john, d, he, d, to:p, [mirror, the, in], show, 'v*', [i, d], 'Tpast', c] Same analysis as in (16a).
    (4) Pictures of himself1 worry John1 [john, d, he, self, of, pictures, d, caus_p, worry, caus_v, 'T', c] Determiner self heads a LE.
    Doubling constituent (DC) self-he-John triggers stacking of John.
    CAUSp does not assign Case to the DC object.
    TOS John theta-merges to the edge of CAUSp.
    CAUSv values ACC Case for John and also heads a LE.
    At CAUSvP, restacking of pictures of himself occurs.
    [Note: John is not subject to restacking.
    Stack elements introduced by self are subject to the condition that they may only be stacked once, i.e. must be "used" (merged) in the current LE.]

    T picks up TOS pictures of himself.
    [Note: A copy of John inside pictures of himself is raised to edge of T. However,John must be spelled out at edge of CAUSp.]
    (21) Pictures of him1 worry John1 [john, d, he, d, of, pictures, d, caus_p, worry, caus_v, 'T', c] Does not converge.
    DC he-John.
    John not on the stack, not available for theta-merge to CAUSp's edge.
    (No LE boundary, no stacking triggered.)
  • Machine Parameters: expand

    Animation:
    (4) Pictures of himself1 worry John1

    Derivation:
    (4) Pictures of himself1 worry John1

    Stream:[[john!D],[d!case!N],[he!D],[self!case!N],[of],[pictures!D],[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):
    SO:[]

    Step 1.

    Head of stream [john!D] is the initial SO
    Stream:[[d!case!N],[he!D],[self!case!N],[of],[pictures!D],[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    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:[[he!D],[self!case!N],[of],[pictures!D],[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):
    SO:[d!case[d][john]]
    Doubling Constitutent (DC) merge

    Step 3.

    Merge [he!D] and [d!case[d][john]]
    Label from [he!D] (head merging with a non-head)
    Push [d!case[d][john]] (unvalued uF) onto stack
    Stream:[[self!case!N],[of],[pictures!D],[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):inactive([d!case[d][john]])
    SO:[he!D[he!D][d!case[d][john]]]

    Step 4.

    Merge [self!case!N] and [he!D[he!D][d!case[d..][john..]]]
    Label from [self!case!N] (head merging with a non-head)
    Inherit interpretable feature(s) [f(phi,[3,sg,m])] from [he!D[he!D][d!case[d..][john..]]]
    [self!case!N] values D on [he!D[he!D][d!case[d..][john..]]]
    [he[he][d!case[d..][john..]]] values N on [self!case!N]
    Stream:[[of],[pictures!D],[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):inactive([d!case[d][john]])
    SO:[self!case[self][he[he][d!case[d][john]]]]

    Step 5.

    Local Extent boundary at [self!case[self][he[he..][d..]]]
    Inactive stack element inactive([d!case[d][john]]) found
    New boundary (b) marker stacked
    Restack [d!case[d][john]] onto stack
    Stream:[[of],[pictures!D],[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):once([d!case[d][john]])
    b
    SO:[self!case[self][he[he][d!case[d][john]]]]

    Step 6.

    Merge [of] and [self!case[self][he[he..][d..]]]
    Label from [of] (head merging with a non-head)
    Theta-mark [self!case[self][he[he..][d..]]]
    [of] values obq case on [self!case[self][he[he..][d..]]]
    Stream:[[pictures!D],[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):once([d!case[d][john]])
    b
    SO:[of[of][self[self][he[he][d!case[d][john]]]]]

    Step 7.

    Merge [pictures!D] and [of[of][self[self..][he..]]]
    Label from [pictures!D] (head merging with a non-head)
    Stream:[[d!case!N],[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):once([d!case[d][john]])
    b
    SO:[pictures!D[pictures!D][of[of][self[self][he[he][d!case[d][john]]]]]]

    Step 8.

    Merge [d!case!N] and [pictures!D[pictures!D][of[of..][self..]]]
    Label from [d!case!N] (head merging with a non-head)
    Inherit interpretable feature(s) [f(phi,[3,pl,n])] from [pictures!D[pictures!D][of[of..][self..]]]
    [d!case!N] values D on [pictures!D[pictures!D][of[of..][self..]]]
    [pictures[pictures][of[of..][self..]]] values N on [d!case!N]
    Stream:[[causp],[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):once([d!case[d][john]])
    b
    SO:[d!case[d][pictures[pictures][of[of][self[self][he[he][d!case[d][john]]]]]]]

    Step 9.

    Merge [causp] and [d!case[d][pictures[pictures..][of..]]]
    Label from [causp] (head merging with a non-head)
    Theta-mark [d!case[d][pictures[pictures..][of..]]]
    Push [d!case[d][pictures[pictures..][of..]]] (unvalued uF) onto stack
    Stream:[[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):[d!case[d][pictures[pictures][of[of][self[self][he[he][d!case[d][john]]]]]]]
    once([d!case[d][john]])
    b
    SO:[causp[causp][d!case[d][pictures[pictures][of[of][self[self][he[he][d!case[d][john]]]]]]]]

    Step 10.

    Relativized TOS search for unvaluediF(theta) skipping [d!case[d][pictures[pictures..][of..]]]
    Internal merge selected
    Merge [causp[causp][d!case[d..][pictures..]]] and [d!case[d][john]]
    Label from [causp[causp][d!case[d..][pictures..]]] (edge feature)
    Theta-mark [d!case[d][john]]
    Move [d!case[d][john]] (unvalued uF) to the front of the stack
    Stream:[[worry],[causv!phi],[T!phi],[c]]
    Stack (⥥):[d!case[d][john]]
    [d!case[d][pictures[pictures][of[of][self[self][he[he][d!case[d][john]]]]]]]
    b
    SO:[causp[d!case[d][john]][causp[causp][d!case[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]

    Step 11.

    Merge [worry] and [causp[d!case[d..][john..]][causp[causp..][d..]]]
    Label from [worry] (head merging with a non-head)
    Stream:[[causv!phi],[T!phi],[c]]
    Stack (⥥):[d!case[d][john]]
    [d!case[d][pictures[pictures][of[of][self[self][he[he][d!case[d][john]]]]]]]
    b
    SO:[worry[worry][causp[d!case[d][john]][causp[causp][d!case[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]]

    Step 12.

    Merge [causv!phi] and [worry[worry][causp[d..][causp..]]]
    Label from [causv!phi] (head merging with a non-head)
    [d!case[d][john]] values uPhi on [causv!phi]
    [causv] values acc case on [d!case[d][john]]
    Stream:[[T!phi],[c]]
    Stack (⥥):[d[d][john]]
    [d!case[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]
    b
    SO:[causv[causv][worry[worry][causp[d[d][john]][causp[causp][d!case[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]]]

    Step 13.

    Local Extent boundary at [causv[causv][worry[worry..][causp..]]]
    Stack element [d!case[d][pictures[pictures..][of..]]] with unvalued uF found
    New boundary (b) marker stacked
    Restack [d!case[d][pictures[pictures..][of..]]] onto stack
    Stream:[[T!phi],[c]]
    Stack (⥥):[d!case[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]
    b
    [d[d][john]]
    b
    SO:[causv[causv][worry[worry][causp[d[d][john]][causp[causp][d!case[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]]]

    Step 14.

    Merge [T!phi] and [causv[causv][worry[worry..][causp..]]]
    Label from [T!phi] (head merging with a non-head)
    [d!case[d][pictures[pictures..][of..]]] values uPhi on [T!phi]
    [T] values nom case on [d!case[d][pictures[pictures..][of..]]]
    Stream:[[c]]
    Stack (⥥):[d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]
    b
    [d[d][john]]
    b
    SO:[T[T][causv[causv][worry[worry][causp[d[d][john]][causp[causp][d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]]]]

    Step 15.

    Internal merge selected
    Merge [T[T][causv[causv..][worry..]]] and [d[d][pictures[pictures..][of..]]]
    Label from [T[T][causv[causv..][worry..]]] (edge feature)
    Stream:[[c]]
    Stack (⥥):[d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]
    b
    [d[d][john]]
    b
    SO:[T[d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]][T[T][causv[causv][worry[worry][causp[d[d][john]][causp[causp][d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]]]]]

    Step 16.

    Merge [c] and [T[d[d..][pictures..]][T[T..][causv..]]]
    Label from [c] (head merging with a non-head)
    Stream:[]
    Stack (⥥):[d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]
    b
    [d[d][john]]
    b
    SO:[c[c][T[d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]][T[T][causv[causv][worry[worry][causp[d[d][john]][causp[causp][d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]]]]]]

    Step 17.

    Local Extent boundary at [c[c][T[d..][T..]]]
    New boundary (b) marker stacked
    Stream:[]
    Stack (⥥):b
    [d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]
    b
    [d[d][john]]
    b
    SO:[c[c][T[d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]][T[T][causv[causv][worry[worry][causp[d[d][john]][causp[causp][d[d][pictures[pictures][of[of][self[self][he[he][d[d][john]]]]]]]]]]]]]]

    Parse:
    Spell-out:
    pictures of -self -obq he -re worry -acc john (after morpheme realization)
    pictures of he -obq -self worry -re john -acc (after affix-hop)
    pictures of he -obq -self worry -re john -acc (after morpheme realization, stage 2)
    pictures of himself worry john  

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

    Back to top