A bottom-up parser introduces a constituent's label only after its children are built, so the label cannot mark where the
children begin. Existing non-binary bottom-up parsers (Fernández-González and Gómez-Rodríguez, 2019)
therefore use actions Reduce-X#k that pop exactly k items and label them X, so every observed label–arity
pair becomes a separate classifier target. The delimiter-guided parser splits this decision in two. A parser configuration is
(σ,i,f) (stack, next input index, completion flag), starting from (ϵ,0,false), and the parser proceeds as follows.
- Mark left boundaries while shifting. Shift pushes the next word; D-Shift first pushes a delimiter
D (the empty label marker Nt()) and then the word, marking the leftmost word of a new phrase-level reduction domain:
D-Shift: (σ,i,false)⇒(σ∣D∣wi, i+1, false).
The static oracle inserts a delimiter at wi if i=0, or if the phrase-level projection (grandparent) of
wi differs from that of wi−1 and wi is at least as deep in the gold tree.
- Predict the label separately. Nt(X) pushes the label marker X after the children have been
shifted or built. For a part-of-speech tag, U-Reduce turns σ∣w∣X into σ∣X(w).
- Recover the reduction domain from the stack. The nearest active delimiter and the topmost label marker
enclose a unique configuration σ∣D∣s1∣⋯∣sk∣X,
and both phrase-level reductions build X(s1,…,sk). The arity k is simply the number of completed
subtrees between D and X; a smaller value would omit a child and a larger one would cross the left boundary,
so no arity parameter is needed.
- Consume or keep the delimiter. Reduce consumes D when the built constituent is the one the
delimiter was assigned to; D-Reduce leaves D on the stack when a higher constituent shares the same left boundary.
Finish ends the derivation once the input is consumed and a single root remains.
For the tree in Figure 2, the oracle runs D-Shift(Ms.), Nt(NNP), U-Reduce, Shift(Haag), Nt(NNP), U-Reduce, Nt(NP), D-Reduce,
D-Shift(plays), Nt(VBZ), U-Reduce, D-Shift(Elianti), Nt(NNP), U-Reduce, Nt(NP), Reduce, Nt(VP), Reduce, Shift(.), Nt(.),
U-Reduce, Nt(S), D-Reduce, Nt(TOP), Reduce, Finish. Unary, binary and ternary constituents all use the same reduction
schema. After auxiliary delimiters are disregarded, each delimiter-guided reduction builds exactly the same local tree as the
corresponding Reduce-X#k action.
In the experiments, the delimiter-guided parser (D) is compared with a reimplementation of the arity-specific parser (A) and a
binary bottom-up parser trained on binarized trees (B). All three share the same Stanza-based neural architecture, optimization,
greedy decoding and evaluation, and differ only in transition inventory, applicability conditions and static oracle. Data: the
Wall Street Journal portion of the Penn Treebank (PTB; train 02–21, dev 22, test 23) and Chinese Treebank 5.1 (CTB).