;; types for the lexicon ; LEXICAL CONSTRAINTS should be over words...we leave these out for now and ; implement them as needed in an ad-hoc manner ; and just force them in the lexicon as I don't think the formalism ; can really be handled here. For reference, they are as follows ; (1) ARP: we leave out the ARP, as our rules overspecify it ; (2) Store Amalgamation Constraint ; (3) SLASH Amalgamation Constraint ; (4) WH-Amalgamation Constraint ; (5) NON-LOCAL amalgamation Constraint ; (6) WH-Subject Prohibition ; (7) WH constraint ;;;;;;;;;;;;;;;;;; -VERBS- ;;;;;;;;;;;;;;;;;;;; ;; dimensions for verbs: ;; (1) How many arguments it has and what type ;; (2) Whether or not the complement is in the slash (we ignore ditransitives for now) ;; (3) finite or base ;; (4) agreement ;; (5) auxiliary v-word := word & [SYNSEM.LOCAL [CAT [HEAD v, SPR <>, SUBJ <#1>], CONT soa & [NUCL rel & [INDICES [FIRST #i]]]], ARG-ST <#1 & [SYNSEM.LOCAL [CAT.HEAD n & [CASE nom], CONT [INDEX #i]]], ...>]. naux := v-word & [SYNSEM.LOCAL.CAT.HEAD.AUX -]. ; (1) number of arguments iv := v-word & [ARG-ST [REST *null*]]. tv := v-word & [SYNSEM.LOCAL.CONT.NUCL.INDICES , ARG-ST <*top*, [SYNSEM [LOCAL [CAT.HEAD n & [CASE acc], CONT [INDEX #j]], WH ]]>]. ;semantics are a bit off, we just stick the propositional argument ; in our list...but the constraints get the job done properly for ; parsing prop-tv := v-word & [SYNSEM.LOCAL.CONT.NUCL.INDICES , ARG-ST <*top*, [SYNSEM [LOCAL [CAT [HEAD [VFORM fin]], CONT proposition & #1]]]>]. ; this differs from the book, i believe there is an error on p 352 wonder-tv := v-word & [SYNSEM.LOCAL.CONT.NUCL.INDICES , ARG-ST <*top*, [SYNSEM.LOCAL [CAT.HEAD verbal & [IC -], CONT question & [PARAMS ]]]>]. outcome-tv := v-word & [SYNSEM.LOCAL.CONT.NUCL.INDICES , ARG-ST <*top*, [SYNSEM [LOCAL [CONT outcome & #1]]]>]. ; thought it should be AUX +, but actually it's supposed to be underspecified ; while other verbs are AUX - aux-v := v-word & [SYNSEM [LOCAL [CAT.HEAD.AUX boolean, CONT #c], SLASH #S], ARG-ST <#1, phrase & [SYNSEM [LOCAL [CAT [HEAD v & [VFORM base], SUBJ < #1 & [SYNSEM.WH ] >], CONT #c], SLASH #S]] >]. ; (2) slash of complement or subj slash-comp-v := v-word & [SYNSEM [LOCAL.CAT [ COMPS <>], SLASH < #2 >], ARG-ST < *top*, [SYNSEM.LOCAL #2]>]. comp-v := v-word & [SYNSEM [LOCAL.CAT [COMPS <#2>]], ARG-ST <*top*, #2>]. naux-comp-v := comp-v & [SYNSEM.SLASH <>]. slash-subj-v := v-word & [SYNSEM [LOCAL.CAT [ SUBJ <[SYNSEM.LOCAL #1]>], SLASH <#1>]]. ; (3) finite or not fin-v := v-word & [SYNSEM.LOCAL.CAT.HEAD.VFORM fin]. base-v := v-word & [SYNSEM.LOCAL.CAT.HEAD.VFORM base]. ; (4) Agreement 3sing-v := v-word & [ARG-ST [FIRST [SYNSEM.LOCAL.CAT.HEAD.AGR 3sing]]]. non-3sing-v := v-word & [ARG-ST [FIRST [SYNSEM.LOCAL.CAT.HEAD.AGR non-3sing]]]. ; NOW, put permutations of (1)-(4) together for use in the lexicon base-iv := iv & base-v & naux. fin-iv := iv & fin-v & naux. fin-iv-3sing := fin-iv & 3sing-v. fin-iv-non-3sing := fin-iv & non-3sing-v. fin-iv-subj-slash := tv & fin-v & slash-subj-v & naux. fin-iv-3sing-subj-slash := fin-iv-subj-slash & 3sing-v. fin-iv-non-3sing-subj-slash := fin-iv-subj-slash & non-3sing-v. base-tv := tv & base-v & naux-comp-v & naux. base-tv-slash := tv & base-v & slash-comp-v. fin-tv := tv & fin-v & naux-comp-v & naux. fin-tv-3sing := fin-tv & 3sing-v. fin-tv-non-3sing := fin-tv & non-3sing-v. fin-tv-slash := tv & fin-v & slash-comp-v & naux. fin-tv-3sing-slash := fin-tv-slash & 3sing-v. fin-tv-non-3sing-slash := fin-tv-slash & non-3sing-v. fin-tv-subj-slash := tv & fin-v & slash-subj-v & naux. fin-tv-3sing-subj-slash := fin-tv-subj-slash & 3sing-v. fin-tv-non-3sing-subj-slash := fin-tv-subj-slash & non-3sing-v. fin-aux-v := aux-v & fin-v & comp-v. fin-aux-v-3sing := fin-aux-v & 3sing-v. fin-aux-v-non-3sing := fin-aux-v & non-3sing-v. base-prop-tv := prop-tv & base-v & naux-comp-v & naux. fin-prop-tv := prop-tv & fin-v & naux-comp-v & naux. fin-prop-tv-3sing := fin-prop-tv & 3sing-v. fin-prop-tv-non-3sing := fin-prop-tv & non-3sing-v. base-outcome-tv := outcome-tv & base-v & naux-comp-v & naux. fin-outcome-tv := outcome-tv & fin-v & naux-comp-v & naux. fin-outcome-tv-3sing := fin-outcome-tv & 3sing-v. fin-outcome-tv-non-3sing := fin-outcome-tv & non-3sing-v. base-wonder-tv := wonder-tv & base-v & naux-comp-v & naux. fin-wonder-tv := wonder-tv & fin-v & naux-comp-v & naux. fin-wonder-tv-3sing := fin-wonder-tv & 3sing-v. fin-wonder-tv-non-3sing := fin-wonder-tv & non-3sing-v. ; *************** ; NOUN nagr-3sing := word & [SYNSEM.LOCAL.CAT.HEAD.AGR 3sing]. nagr-non-3sing := word & [SYNSEM.LOCAL.CAT.HEAD.AGR non-3sing]. noun-word := word & [SYNSEM [LOCAL [CAT [HEAD n], CONT param & [INDEX #1, RESTR ], STORE *null-dlist*], SLASH < >, WH , BCKGRND < predicate & [PARGS <#1, *top*>]>], ARG-ST <>]. proper-noun := noun-word & nagr-3sing & [ORTH <#1>, SYNSEM [LOCAL [CAT [SPR <>]], BCKGRND <[PREDICATE "named", PARGS <*top*, #1>]>]].