Djupstruktur och ytstruktur En gammal man bodde på vinden. På vinden bodde en gammal man.
Chomsky 1965 baskomponent transformationskomponent
Föregångare till UCP Augmented Transition Network (Woods 1970)
Uppsala Chart Processor - UCP icke-deterministisk chartparser procedurell formalism
Chart den centrala datastrukturen i en chartparser är en chart en chart är en riktad graf som består av noder (vertices) och bågar (edges) bågarna är aktiva eller passiva de aktiva bågarna representerar regler och partiellt analyserade konstituenter de passiva bågarna representerar kompletta analysresultat
Task bearbetningen sker genom ett samspel mellan aktiva och passiva bågar när en aktiv båge träffar på en passiv så bildas ett bearbetningssteg, en task bearbetningsstegen förs till en agenda (scheduling) från agendan hämtas de för exekvering (selecting) utförandet av ett bearbetningssteg leder vanligen till nya bågar och nya bågkonstellationer, som genererar nya bearbetningssteg när agendan är uttömd är parsningen avslutad resultatet av en komplett parsning representeras av en passiv båge från första till sista vertex
Bågar i UCP alla bågar i en UCP-chart innehåller uppgift om ursprungstask (Creator) alla aktiva bågar innehåller en regelsekvens (LR-Action) alla passiva bågar innehåller en särdragsstruktur (Features) med ett toppsärdrag * icke-initiala aktiva bågar innehåller en särdragsstruktur (Features) med ett toppsärdrag & en initial aktiv båge går från och till sig själv en initital aktiv båge sätter i gång en regeltillämpning eller en lexikonsökning
Exempel på en aktiv båge 1--7 Creator: 78 Features: (& = (PHR.CAT = CL TYPE = MAIN MODE = DECL NP = (START = 1 END = 7 PHR.CAT = NP NUMB = SING GENDER = UTR CASE = BASIC DEF = DEF HEAD = (LEM = SOL.NN WORD.CAT = NOUN)))) LR-Action: <* PHR.CAT> = 'VP, <* INFF> = 'FIN, <& VP> :=: <*>, STORE, MAJORPROCESS(SENT);
Exempel på en passiv båge 7--13 Creator: 112 Features: (* = (START = 7 END = 13 PHR.CAT = VP VERB.TYPE = MAIN INFF = FIN TENSE = PRES DIAT = ACT VERB = (WORD.CAT = VERB LEM = SKINA.VB)))
Processkontroll parsningen styrs av tillståndet i charten principer för scheduling bredden först eller djupet först principer för selektion bredden först eller djupet först
Uppbyggnad av charten UCP bygger en initial chart av inputsträngen i övrigt styrs chartbyggandet från språkbeskrivningen (grammatik el. lexikon)
Den procedurella formalismen bygga strukturbeskrivningar i form av särdragsstrukturer införa nya bågar i charten
Operatorerna test och tilldelning av attribut och värden kontroll införa nya bågar i charten
Test och tilldelning unifiering ( :=: ) test på likhet ( = ) not path <& val1 valn> nil atom <* val1 valn> <& val1... valn :new> <& val1 valn :last>
Kontroll sekvens (, ) oberoende disjunktion ( // ) beroende disjunktion ( / ) if then else subregel(arg) true ( continue ) false ( failure )
Nya bågar process(arg) majorprocess(arg) advance store minorstore
process(arg) en ny aktiv båge från och till den aktiva bågens slutnod i aktuell task arg är namn på en grammatikregel eller ett lexikon
majorprocess(arg) ny aktiv båge från och till den aktiva bågens begynnelsenod i aktuell task arg är namn på en grammatikregel eller ett lexikon
advance ny aktiv båge från den aktiva bågens begynnelsenod i aktuell task till den passiva bågens slutnod bågen bär med sig den regelsekvens som återstår att utföra och den särdragsstruktur som byggts upp
store ny passiv båge från den aktiva bågens begynnelsenod i aktuell task och till den passiva bågens slutnod bågen ärver den särdragsbeskrivning som byggts upp i den aktiva bågen
minorstore ny passiv båge från den aktiva bågens begynnelsenod i aktuell task och till den passiva bågens begynnelsenod bågen ärver den särdragsbeskrivning som byggts upp i den aktiva bågen
Procedurella formalismer motivering fördelar nackdelar
Versioner av UCP UCP original (Lisp) lexikonsökning morfologisk analys syntaktisk analys fonologisk analys UCP light (C) syntaktisk analys
Tillämpningar böjningsanalys och sammansättningsanalys för lexikonbyggande grammatikkontroll SCARRIE, Scania Checker maskinöversättning (MULTRA) ordpredicering (FASTY)