Språkgranskningsverktyg, vt 2008
|
|
- Karl Eriksson
- för 5 år sedan
- Visningar:
Transkript
1 , vt 2008 Föreläsning 7 Chartparsning i allmänhet och UCP i synnerhet evapet@stp.lingfil.uu.se 1
2 Djupstruktur och ytstruktur Jag läste en bok igår Igår läste jag en bok 2
3 Chartparsning - bakgrund Utvecklades i slutet av 60-talet och början av 70-talet (Martin Kay och Ron Kaplan) Generell datastruktur för satsanalys Utforskar alla alternativa analyser vid varje steg i parsningsprocessen Alla alternativa analyser sparas i en chart (av eng. tabell/diagram/grafisk bild) Delanalyserna kan sedan användas vid lösning av större segment i satsen 3
4 Chartparsning 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) Noderna utgörs av ord eller tecken Bågarna är aktiva eller passiva: aktiva bågar representerar delanalyser under uppbyggnad (regeltillämpningar och partiellt analyserade konstituenter) passiva bågar representerar kompletta (del)analyser 4
5 Samspelet mellan aktiva och passiva bågar (1) Analysen byggs upp genom ett samspel mellan aktiva och passiva bågar Chartparsningens fundamentala lag: När en aktiv båge träffar på en passiv båge (dvs den högraste noden i en aktiv båge är samma nod som den vänstraste noden i en passiv båge) bildas ett bearbetningssteg, en task Bearbetningsstegen läggs på en agenda (scheduling) Från agendan hämtas de för exekvering (selecting) i den ordning som bestämts av systemet 5
6 Samspelet mellan aktiva och passiva bågar (2) Ett bearbetningssteg involverar alltid exakt en aktiv och en passiv båge 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 noden 6
7 Processkontroll Bearbetningen i en chartparser styrs av: tillståndet i charten principer för scheduling och selection bredden först (i den ordning de skapades) djupet först (vänstraste/högraste symbolen först) Formalismens uppgift bygga strukturbeskrivningar i form av särdragsstrukturer införa nya bågar i charten och därmed föra bearbetningen framåt 7
8 UCP (Uppsala Chart Parser) UCP1/UCP2 skrivet i LISP chartparsning tecken för tecken lexikonsökning, stavelseanalys, morfologisk och syntaktisk analys UCP2 används på labben UCP3 (UCP light) mindre och snabbare variant, konverterad till C chartparsning ord för ord hanterar syntaktisk analys (lexikon hanteras av andra moduler) används för t.ex. maskinöversättning 8
9 Tillämpningar av UCP böjnings- och sammansättningsanalys för lexikonbyggande grammatikkontroll SCARRIE Scania Checker maskinöversättning Convertus-systemet (föregångare: Multra, MATS) ordpredicering Fasty-projektet 9
10 Uppbyggnad av charten i UCP UCP bygger en initial passiv chart av inputsträngen och lägger in en aktiv båge från och till startnoden Fortsatt uppbyggnad av charten styrs av regler i språkbeskrivningen, dvs i lexikon och grammatik start.rule är ett reserverat namn på den regel som inleder parsningen 10
11 Bågar i UCP alla bågar i en UCP-chart innehåller uppgift om ursrpungstask (creator) start- och slutnod aktiva bågar innehåller en särdragsstruktur (features) med ett toppsärdrag & passiva bågar innehåller en särdragsstruktur (features) med ett toppsärdrag * aktiva bågar innehåller en LR-Action (regelsekvens eller lexikonpekare) en initial aktiv båge går från och till sig själv 11
12 Exempel på en UCP-regel (define sve.gram-entry np_noun #u <* word.cat> = 'NOUN, <& phr.cat>:=:'np, <& numb> :=: <* numb>, <& gender>:=:<* gender>, <& case>:=:<* case>, <& def>:=:<* def>, <& head lem>:=:<* lem>, <& head word.cat>:=:<* word.cat>, store; #! word.cat; ) 12
13 Exempel på en passiv båge 1--7 Creator: 112 Features: (* = (START = 1 END = 7 PHR.CAT = NP NUMB = SING GENDER = UTR CASE = BASIC DEF = DEF HEAD = (WORD.CAT = NOUN LEM = SOL.NN))) 13
14 Exempel på en UCP-regel (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; ) 14
15 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); 15
16 Regelformat (define grammatiknamn-entry regelnamn #u rule.body; #! passivt.filter; #! aktivt.filter; ) (define sve.gram-entry np_noun #u <* word.cat> = 'NOUN, <& phr.cat>:=:'np, <& numb> :=: <* numb>, <& gender>:=:<* gender>, <& case>:=:<* case>, <& def>:=:<* def>, <& head lem>:=:<* lem>, <& head word.cat>:=:<* word.cat>, store; #! word.cat; ) 16
17 Konstanter och särdragsstrukturer Konstanter, dvs atomiska värden i en särdragsstruktur, föregås av ' Bågar skrivs inom < > (define sve.gram-entry np_noun #u <* word.cat> = 'NOUN, <& phr.cat>:=:'np, <& numb> :=: <* numb>, <& gender>:=:<* gender>, <& case>:=:<* case>, <& def>:=:<* def>, <& head lem>:=:<* lem>, <& head word.cat>:=:<* word.cat>, store; #! word.cat; ) 17
18 Operatorer i UCP operatorer för test och tilldelning av attribut och värden operatorer för kontroll operatorer för att införa nya bågar i charten 18
19 Operatorer för test och tilldelning Likhetsoperatorn: attribut = värde testar att två särdragsstrukturer är ekvivalenta om attributet är ospecificerat eller har ett annat värde än det som står till höger om likhetsoperatorn så misslyckas regeln Unifieringsoperatorn: attribut :=: värde testar och tilldelar på samma gång om attributet är ospecificerat tilldelas det värdet till höger om unifieringsoperatorn om attributet har ett annat värde än det som står till höger om unifieringsoperatorn så misslyckas regeln 19
20 Operatorer för test och tilldelning (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; ) 20
21 nil-värdet atomen nil betecknar underspecificerade värden ordformen barn kan vara antingen singular eller plural, och kan därför initialt tilldelas nil-värdet för sitt numerussärdrag vid unifiering med en struktur där värdet är specificerat, skrivs nil-värdet över med det specificerade värdet 21
22 Operatorer för kontroll (1) konjunktion: expr1,..., exprn uttryck åtskilda med kommatecken testas i sekvens om ett uttryck misslyckas, testas inte följande uttryck, utan hela regeln misslyckas 22
23 Konjunktion (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; ) 23
24 Operatorer för kontroll (2) beroende disjunktion: expr1 /... / exprn uttryck åtskilda med / testas i sekvens om ett uttryck i disjunktionen misslyckas, testas följande uttryck istället om ett uttryck i disjunktionen lyckas, testas inte följande uttryck rekommenderas att disjunktionen skrivs inom parentes: (expr1 /... / exprn) 24
25 Beroende disjunktion (define sve.gram-entry np_noun #u <* word.cat> = 'NOUN, <& phr.cat>:=:'np, (<& numb> :=: 'plur/<& numb> :=:'sing), <& gender>:=:<* gender>, <& case>:=:<* case>, <& def>:=:<* def>, <& head lem>:=:<* lem>, <& head word.cat>:=:<* word.cat>, store; #! word.cat; ) 25
26 Operatorer för kontroll (3) oberoende disjunktion: expr1 //... // exprn uttryck åtskilda med // testas var och en för sig, oberoende av varandra rekommenderas att disjunktionen skrivs inom parentes: (expr1 //... // exprn) 26
27 Oberoende disjunktion (define sve.gram-entry np_noun #u <* word.cat> = 'NOUN, <& phr.cat>:=:'np, (<& numb> :=: 'plur//<& numb> :=:'sing), <& gender>:=:<* gender>, <& case>:=:<* case>, <& def>:=:<* def>, <& head lem>:=:<* lem>, <& head word.cat>:=:<* word.cat>, store; #! word.cat; ) 27
28 Operatorer för kontroll (4) villkorssatser: if condition then expr1 else expr2 om villkoret condition är uppfyllt, så utförs expr1, annars utförs expr2 else-satsen är optionell 28
29 Villkorssatser (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; ) (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, if (<* word.cat>='verb, <* inff>='fin) then (<& verb>:=:<*>, store) #! phr.cat or word.cat; ) 29
30 Sanningsvärden och negation continue (sant) failure (falskt, regeln misslyckas) not (negation) if (not <* numb>='sing) then continue else failure 30
31 Operatorer för kontroll (5) regelanrop: regelnamn(arg1,..., argn) bearbetar den anropade regeln innan nästa instruktion utförs argument är optionella om argument skickas med, kan de anropas från den nya regeln med hjälp av indexerade variabler:?1,?2,?3 etc. 31
32 Regelanrop (define form.dic-entry "studenten" #u noun.entry('student.nn, 'utr, 'sing, 'def, 'basic); ) (define sve.gram-entry noun.entry #u end.of.word, <& word.cat>:=:'noun, <& lem> :=:?1, <& gender> :=:?2, <& numb> :=:?3, <& def> :=:?4, <& case> :=:?5, majorprocess(np_noun), store.form; ) 32
33 Operatorer för att skapa nya aktiva bågar (1) process(arg) startar en ny process i ändpunkten på den aktiva bågen i aktuell task arg utgörs av namnet på en grammatikregel (define sve.gram-entry start.rule #u process(form.dic), majorprocess(cl.decl); #! char; ) 33
34 Operatorer för att skapa nya aktiva bågar (2) majorprocess(arg) startar en ny process i startpunkten på den aktiva bågen i aktuell task (define sve.gram-entry noun.entry #u end.of.word, <& word.cat>:=:'noun, <& lem> :=:?1, <& gender> :=:?2, <& numb> :=:?3, <& def> :=:?4, <& case> :=:?5, majorprocess(np_noun), store.form; ) 34
35 Operatorer för att skapa nya aktiva bågar (3) advance(arg) för pågående process vidare genom att lägga in en ny aktiv båge från startpunkten i den aktiva bågen i aktuell task till slutpunkten i den passiva bågen 35
36 advance (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; ) 36
37 Operatorer för att skapa nya passiva bågar (1) store(arg) lagrar resultatet av bearbetningen i aktuell task genom att lägga in en ny passiv båge från startpunkten i den aktiva bågen till slutpunkten i den passiva bågen ( konsumerar den passiva bågen) 37
38 store (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; ) 38
39 Operatorer för att skapa nya passiva bågar (2) minorstore(arg) lagrar resultatet av bearbetningen i aktuell task genom att lägga in en ny passiv båge från startpunkten i den aktiva bågen till dess slutpunkt 39
40 Grammatikkontroll med UCP Lokala felregler ReportChart Chartscanner som söker efter felsärdrag i charten Tre grundläggande principer: Simplicity Principle Sök endast efter fel på toppnivån i särdragsstrukturen Longest Span Principle Välj alltid den längsta analysen Right-Before-Wrong Principle Om det finns flera analyser av samma längd, så välj alltid en analys utan fel i framför en analys med fel i 40
41 ett student - brott mot genuskongruens i NP (define sve.gram-entry np_art_noun #u <& phr.cat> :=: 'np, <* word.cat> = 'art, <& art> :=: <*>, advance, <* word.cat> = 'noun, (<& art gender> :=: <* gender> / <& err :new> :=: 'np-gender), <& head> :=: <*>, store; #! word.cat; ) (setq *error-acts* '(:VAL (np-gender. "Brott mot genuskongruens i NP") (felkod1. "beskrivning av felet") (felkod2. "beskrivning av ett annat fel") ))
42 ett student - brott mot genuskongruens i NP (* = (START = 1 END = 13 NUMB = SING GENDER = NEUTR DEF = INDEF PHR.CAT = NP DET = (LEM = EN.AL WORD.CAT = ART) ERR = (1 = NP-GENDER) CASE = BASIC HEAD = (LEM = STUDENT.NN WORD.CAT = NOUN)))
43 Uppärvning av särdrag Chartscannern söker endast efter felsärdraget på toppnivån i charten Felsärdrag som ligger på fraser under toppninvån måste ärvas upp till toppnivån för att ge effekt ett student NP-kongruensfel pluggar verb deklarativ huvudsats NP + verb 43
44 ett student pluggar - inga felmeddelanden från grammatiken! (define sve.gram-entry np_art_noun #u <& phr.cat> :=: 'np, <* word.cat> = 'art, <& art> :=: <*>, advance, <* word.cat> = 'noun, (<& art gender> :=: <* gender> / <& err :new> :=: 'np-gender), <& head> :=: <*>, store; #! word.cat; ) (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; )
45 (* = (START = 1 END = 21 PHR.CAT = CL TYPE = MAIN MODE = DECL SUBJ = (START = 1 END = 13 NUMB = SING GENDER = NEUTR DEF = INDEF PHR.CAT = NP DET = (LEM = EN.AL WORD.CAT = ART) ERR = (1 = NP-GENDER) CASE = BASIC HEAD = (LEM = STUDENT.NN WORD.CAT = NOUN)) VERB = (START = 13 END = 21 WORD.CAT = VERB LEM = PLUGGA.VB DIAT = ACT INFF = FIN TENSE = PRES VERB.TYPE = MAIN)))
46 ett student pluggar - brott mot genuskongruens i NP (define sve.gram-entry np_art_noun #u <& phr.cat> :=: 'np, <* word.cat> = 'art, <& art> :=: <*>, advance, <* word.cat> = 'noun, (<& art gender> :=: <* gender> / <& err :new> :=: 'np-gender), <& head> :=: <*>, store; #! word.cat; ) (define sve.gram-entry cl.decl #u <& phr.cat>:=:'cl, <& type>:=:'main, <& mode>:=:'decl, <* phr.cat>='np, <* case>:=:'basic, <& subj>:=:<*>, (<& subj err>, <& err>:=:<& subj err>/ not <& subj err>), advance, <* word.cat>='verb, <* inff>='fin, <& verb>:=:<*>, store; #! phr.cat or word.cat; )
47 (* = (START = 1 END = 21 PHR.CAT = CL TYPE = MAIN MODE = DECL SUBJ = (START = 1 END = 13 NUMB = SING GENDER = NEUTR DEF = INDEF PHR.CAT = NP DET = (LEM = EN.AL WORD.CAT = ART) ERR = (1 = NP-GENDER) CASE = BASIC HEAD = (LEM = STUDENT.NN WORD.CAT = NOUN)) ERR = <* SUBJ ERR> VERB = (START = 13 END = 21 WORD.CAT = VERB LEM = PLUGGA.VB DIAT = ACT INFF = FIN TENSE = PRES VERB.TYPE = MAIN)))
48 Referenser Anna Sågvall Heins föreläsningsbilder från Maskinöversättning och språkgranskning 2006 Weijnitz, Per: Uppsala Chart Parser Light System Documentation, in Working Papers in Computational Linguistics & Language Engineering 12 Sågvall Hein, Anna: A Test Version of the Grammar Checker for Swedish, in Working Papers in Computational Linguistics & Language Engineering 12 48
Djupstruktur och ytstruktur
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)
Läs merSpråkgranskningsverktyg. Grammatikkontroll med Scarrie
Språkgranskningsverktyg Grammatikkontroll med Scarrie Strategi för grammatikkontroll Vision Fullständig parsning enligt en heltäckande grammatik som skiljer ut avvikande konstruktioner och diagnosticerar
Läs merMaskinöversättning och språkgranskning
Maskinöversättning och språkgranskning Föreläsning 7 Regelbaserad maskinöversättning Eva Pettersson Institutionen för lingvistik och filologi Uppsala universitet e-post: evapet@stp.lingfil.uu.se Föreläsningsöversikt
Läs merMaskinöversättning och språkgranskning. F6: Grammatikkontroll
Maskinöversättning och språkgranskning F6: Grammatikkontroll Grammatikkontroll av svenska För svenska finns huvudsakligen tre olika modeller Word Scarrie Granska Scarrie och Granska är forskningsprototyper.
Läs merSATSLÖSNING I EN LEXIKONORIENTERAD PARSER FÖR SVENSKA. Mats Dahllöf
SATSLÖSNING I EN LEXIKONORIENTERAD PARSER FÖR SVENSKA Mats Dahllöf Februari 1989 1 1 Inledning: bakgrund och syfte Det arbete som här framläggs är utfört inom projektet en Lexikonorienterad Parser för
Läs merSvårigheter med kurslitteraturen
Svårigheter med kurslitteraturen Forskningsanknuten kurs Litteraturen är skriven i syfte att presentera forskningsresultat och ofta argumentera för vissa lösningar; undantag: uppfriskningslitteraturen
Läs merspråkgranskning, ht 2007
Maskinöversättning och språkgranskning, ht 2007 Föreläsning 3 Grammatikkontroll evapet@stp.lingfil.uu.se 1 Föreläsningsöversikt Allmänt om grammatikkontroll Allmänt om stilkontroll Språkgranskningssystem
Läs merAnna Sågvall Hein Centrum för datorlingvistik Sturegatan 13 B, 5 tr U P P S A L A
Anna Sågvall Hein Centrum för datorlingvistik Sturegatan 13 B, 5 tr 752 23 U P P S A L A REGELA K T I V E RI N G I EN P A R S E R F Ö R S V ENSKA (SVE.UCP) 1. Inledning. Parsing är den process i vilken
Läs merFör närmare upplysningar om bakgrunden till UCP samt om hur den är relaterad till tidigare arbeten, se Sägvall 80b.
95 Anna StAgvall Hein UCDL Centrum för Hatorlingvistik Uppsala Universitet UPPSALA CHART PARSER, Version 2 (UCP-2) - En översikt. 1. Inledning Uppsala Chart Parser är en lingvistisk processor för analys
Läs merObesvarade frågor från F1
Obesvarade frågor från F1 Antal ord i sista upplaga av SAOL Ex. på ord som försvunnit Ex. på nyord Varför är SAOL bättre som norm för stavningskontroll än SAOB? Språkgranskningsverktyg F4: Grammatikkontroll
Läs merMÖSG ht 2005 Maskinöversättningssystemet MATS
MÖSG ht 2005 Maskinöversättningssystemet MATS Per Weijnitz perweij@stp.ling.uu.se Om detta kursmoment främja förståelse av översättningsproblem MÖ-arbete regelbaserade MÖ-system godtyckligt valt system?
Läs merstinaka@stp.ling.uu.se
!"# $ %& ' % )(* +-,/.1032 5#687:9'; 4 stinaka@stp.ling.uu.se = 2@? 7 0AB2 9'687, 7.)C 2D,FE 9'G.10 ;IH.1A',J.LK +NM 9 2@K-, 4 7 KN0E G E ;.1M 9 E ;O9 2I?P? 7, Q MMAB2 G 2SR0. HT7:9 A!.U, 7,VWX0A',J.U,JRY,J.LEZ0
Läs merIntroduktion till språkteknologi. Datorstöd för språkgranskning
Introduktion till språkteknologi OH-serie 2: Datorstöd för språkgranskning oktober 2008 Mats Dahllöf (efter Sofia Gustafson-Capková) Institutionen för lingvistik och filologi UPPSALA UNIVERSITET Huvudpunkter
Läs merGrundläggande textanalys, VT 2011 Stavnings- och grammatikkontroll i Microsoft Word. Eva Pettersson UU/Convertus
Grundläggande textanalys, VT 2011 Stavnings- och grammatikkontroll i Microsoft Word Eva Pettersson UU/Convertus evapet@stp.lingfil.uu.se Föreläsningsöversikt Allmänt om grammatikkontroll Allmänt om stilkontroll
Läs merDagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program
Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik VT05 2 Repetition Repetition - Programmering i
Läs merGrundläggande logik och modellteori
Grundläggande logik och modellteori Kapitel 6: Binära beslutsdiagram (BDD) Henrik Björklund Umeå universitet 22. september, 2014 Binära beslutsdiagram Binära beslutsdiagram (Binary decision diagrams, BDDs)
Läs merGrammatisk teori III Praktisk analys
Grammatisk teori III Praktisk analys 1. Satser Till skillnad från fraser har satser inga givna strukturella huvuden. Olika teorier gör olika antaganden om vad som utgör satsens huvud. Den lösning som förespråkas
Läs merPartiell parsning Parsning som sökning
Språkteknologi: Parsning Parsning - definition Parsningsbegrepp Chartparsning Motivering Charten Earleys algoritm (top-down chartparsning) Partiell parsning (eng. chunking) med reguljära uttryck / automater
Läs merGrammatisk teori II Attributvärdesgrammatik
Grammatisk teori II Attributvärdesgrammatik 1. Lexikon and syntaktiska regler Inom lingvistisk teori delas den mentala representationen av språket upp i två centrala komponenter: lexikon och syntaktiska
Läs merTvå fall: q Tom sekvens: () q Sekvens av element: (a b c) ; (sum-rec '(2 4 6)) = 12. q Första elementet uppfyller vissa villkor: (2 a b c)
Programmönster: # Listan som sekvens, Rekursiv process Enkel genomgång av sekvens (element på toppnivån i en lista)) TDDC60 Programmering: abstraktion och modellering Föreläsning 5 Rekursiva och iterativa
Läs merSyntaktisk parsning (Jurafsky & Martin kapitel 13)
Syntaktisk parsning (Jurafsky & Martin kapitel 13) Mats Wirén Institutionen för lingvistik Stockholms universitet mats.wiren@ling.su.se DH2418 Språkteknologi DA3010 Språkteknologi för datorlingvister Föreläsning
Läs merTekniker för storskalig parsning
Tekniker för storskalig parsning Grundläggande begrepp och metoder Joakim Nivre Uppsala Universitet Institutionen för lingvistik och filologi joakim.nivre@lingfil.uu.se Tekniker för storskalig parsning
Läs merF5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander
F5 Selektion och iteration ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Boolska uttryck Boolska uttryck använder sig av jämförelseoperatorer < > = ==!= Resultatets datatyp är boolean
Läs merUtsagor (Propositioner) sammansatta utsagor sanningstabeller logisk ekvivalens predikat (öppna utsagor) kvantifierare Section
Föreläsning 1 Utsagor (Propositioner) sammansatta utsagor sanningstabeller logisk ekvivalens predikat (öppna utsagor) kvantifierare Section 1.1-1.3 i kursboken Definition En utsaga (proposition) är ett
Läs merFöreläsning 5: Modellering av frasstruktur. 729G09 Språkvetenskaplig databehandling Lars Ahrenberg
Föreläsning 5: Modellering av frasstruktur 729G09 Språkvetenskaplig databehandling Lars Ahrenberg 2014-05-05 1 Översikt Introduktion generativ grammatik och annan syntaxforskning Att hitta mönster i satser
Läs merProgrammeringsteknik med C och Matlab
Programmeringsteknik med C och Matlab Kapitel 2: C-programmeringens grunder Henrik Björklund Umeå universitet Björklund (UmU) Programmeringsteknik 1 / 32 Mer organisatoriskt Imorgon: Datorintro i lab Logga
Läs merDD1361 Programmeringsparadigm HT17
DD1361 Programmeringsparadigm HT17 Logikprogrammering 1 Dilian Gurov, KTH Delkursinnehåll Logisk versus procedurell läsning Kontrollflöde: Unifiering, Backtracking, Snitt Induktiva datatyper och rekursion
Läs merSpråkgranskningsverktyg. Grammatikkontroll i Word
Språkgranskningsverktyg Grammatikkontroll i Word Allmänt om grammatikkontroll Grammatikkontrollprogrammen inriktas mot en i förväg definierad felrepertoar. Fastställs vanligen genom analys av korpusmaterial.
Läs merDagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program
Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik för ingenjörer, VT06 2 Repetition Repetition -
Läs merAutomatateori (2) Idag: Sammanhangsfria språk. Dessa kan uttryckas med Grammatik PDA
Automatateori (2) Idag: Sammanhangsfria språk Dessa kan uttryckas med Grammatik PDA Grammatik = språkregler Ett mer kraftfullt sätt att beskriva språk. En grammatik består av produktionsregler (andra ord
Läs merTDP007 Konstruktion av datorspråk Hemtentamen
TDP007 Konstruktion av datorspråk Hemtentamen 2008-08-20 Hemtentamen är kompletterings- och omexaminationstillfälle för de studenter som missat hela eller delar av inlämningar och seminarier, moment LAB1,
Läs merDE GRAMMATISKA BESKRIVNINGARNA I SVE.UCP
Lars Ahrenberg Institutionen för lingvistik Uppsala universitet Box 513 751 20 UPPSALA DE GRAMMATISKA BESKRIVNINGARNA I SVE.UCP 1. Inledning. SVE.UCP är en parser för svenska som är under utveckling vid
Läs merParsning. TDP007 Konstruktion av datorspråk Föreläsning 6. Peter Dalenius Institutionen för datavetenskap
Parsning TDP007 Konstruktion av datorspråk Föreläsning 6 Peter Dalenius Institutionen för datavetenskap 2017-02-14 2 Analys av källkod Lexikalisk analys Bildar tokensutifrån källkodens text. Syntaktisk
Läs merSpråket Python - Del 1 Grundkurs i programmering med Python
Hösten 2009 Dagens lektion Ett programmeringsspråks byggstenar Några inbyggda datatyper Styra instruktionsflödet Modulen sys 2 Ett programmeringsspråks byggstenar 3 ETT PROGRAMMERINGSSPRÅKS BYGGSTENAR
Läs merDugga Datastrukturer (DAT036)
Dugga Datastrukturer (DAT036) Duggans datum: 2012-11-21. Författare: Nils Anders Danielsson. För att en uppgift ska räknas som löst så måste en i princip helt korrekt lösning lämnas in. Enstaka mindre
Läs merFöreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk
Föreläsning 2 steknik och C DD1316 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program
Läs merTENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13:15
TENTAMEN I PROGRAMSPRÅK -- DVG C01 140605 kl. 08:15-13:15 Ansvarig Lärare: Donald F. Ross Hjälpmedel: Bilaga A: BNF-definition Betygsgräns: Kurs: Max 60p, Med beröm godkänd 50p, Icke utan beröm godkänd
Läs merExtra övningar på SDD:er/SDT:er
Extra övningar på SDD:er/SDT:er Bakvända meningar Grammatik: sentence word sentence sentence ε sentence space sentence word char word char 1 char 2 word char 1 word 1 char 2 Symbolen sentence producerar
Läs merGrammatisk teori III - Seminarium
Grammatisk teori III - Seminarium Attributvärdesanalys Gör en attributvärdesanalys av satserna nedan: 1. Länsstyrelsen vill ha fler spår. 2. Piraterna är klara för slutspel. 3. En buss och en stadsjeep
Läs merFöreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt
Föreläsning 2 Programmeringsteknik och C DD1316 Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C Python introduktion Utskrift Inläsning Variabler Datatyp Aritmetiska operatorer Omvandling
Läs merDependensregler - Lathund
Dependensregler - Lathund INTRODUKTION I textprogrammet TeCST är det möjligt för en skribent att skriva, redigera och klistra in text för att få ut läsbarhetsmått och få förslag på hur texten kan skrivas
Läs merDatatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek
De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000
Läs merRepetition C-programmering
Repetition C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. Repetition
Läs merMultipel tilldelning. Introduktion till programmering D0009E. Föreläsning 6: Iteration. while-satsen. Kom ihåg. Snurror kontra rekursion
Introduktion till programmering D0009E Föreläsning 6: Iteration Multipel tilldelning Helt ok att tilldela en variabel flera gånger: bruce = bruce, bruce = 7 bruce Output: 7 Som tillståndsdiagram: bruce
Läs merProgrammera i C Varför programmera i C när det finns språk som Simula och Pascal??
Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? C är ett språk på relativt låg nivå vilket gör det möjligt att konstruera effektiva kompilatorer, samt att komma nära
Läs merOrdklasser. Särdrag, lexikon och syntax. Ordklasskriterier II. Ordklasskriterier. Öppna klasser. Slutna klasser
Ordklasser Särdrag, lexikon och syntax Ola Knutsson knutsson@nada.kth.se Slutna klasser: prepositioner, konjunktioner, subjunktioner m.fl. (funktionsord) Inga nya ord bildas. Öppna klasser: substantiv,
Läs merIntroduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion
Introduktion till programmering Föreläsning 4: Villkor och rekursion 1 1 Några inbyggda funktioner (med resultat!) Konverterar mellan de grundläggande typerna: >>> int("32") 32 >>> int(3.999) 3 >>> float(32)
Läs merSpråkgranskningsverktyg, vt 2009
, vt 2009 Föreläsning 8 Scania Checker evapet@stp.lingfil.uu.se 1 Föreläsningsöversikt Kontrollerat språk Scania-svenska Scania Checker Demo 2 Kontrollerat språk Delmängd av naturligt språk Restriktioner
Läs merFöreläsning 7 Datastrukturer (DAT037)
Föreläsning 7 Datastrukturer (DAT037) Fredrik Lindblad 1 2016-11-21 1 Slides skapade av Nils Anders Danielsson har använts som utgångspunkt. Se http://www.cse.chalmers.se/edu/year/2015/course/dat037 Förra
Läs merSärdrag, lexikon och syntax. Ordklasser. Ordklasskriterier II. Ordklasskriterier. Öppna klasser. Slutna klasser
Särdrag, lexikon och syntax Ordklasser Slutna klasser: prepositioner, konjunktioner, subjunktioner m.fl. (funktionsord) Inga nya ord bildas. Ola Knutsson knutsson@nada.kth.se Öppna klasser: substantiv,
Läs merFöreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk
Föreläsning 2 steknik DD1310 Python introduktion Variabler Datatyper Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program är
Läs merObjektorienterad programmering
Objektorienterad programmering Föreläsning 14 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se Agenda Exceptionella händelser Vanliga Programfel Exception-klasser Automatiskt genererade
Läs merIntroduktion C-programmering
Introduktion C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. 2 C Standarder
Läs merParsningens olika nivåer
Parsning Språkteknologi DH418 Ola Knutsson 008 Varför parsning? Grammatikkontroll Fråge-svarsystem Maskinöversättning Semantisk analys (vad menas?) Testa grammatikformaliser och grammatiker (undvika länsstolslingvistik)
Läs merOutline. For. I istället för att följa det normala ordningen, man ändra den. I i Java får man inte göra hopp hur som helst
Outline Objektorienterad Programmering (TDDC77) Föreläsning IV: while, for, do while, switch, arrayer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Ordning Villkorliga hopp I Normalt sett så
Läs merPythons standardbibliotek
Pythons standardbibliotek Python 3 skall, enligt standarddokumenten http://docs.python.org/py3k/library/index.html ha stöd för vissa funktioner, typer och datastrukturer Så länge man håller sig till detta
Läs mern Detta för att kunna koncentrera oss på n Tal: number? n Symboler: symbol? n Strängar: string? n Tecken: char? n Boolskt: boolean?
Tidigare TDDC74 Programming: Abstraktion och modellering Föreläsning 4 Symboler, Par, Listor Representation av par, Grafisk notation för par Representation av listor mha par Typiska listhanteringsprocedurer
Läs mer2. Utgångspunkter och angreppssätt för automatisk språkgranskning
Översikt och läsanvisning 2. Utgångspunkter och angreppssätt för automatisk språkgranskning Detta kapitel beskriver utgångspunkter och angreppssätt för automatisk språkgranskning för svenska. I kapitlet
Läs merOrdklasser. Särdrag, lexikon och syntax. Öppna klasser. Slutna klasser. Vilka ord i lexikon? Vad skall man med en grammatik till?
Ordklasser Särdrag, lexikon och syntax Slutna klasser: prepositioner, konjunktioner, subjunktioner m.fl. (funktionsord) Inga nya ord bildas. Öppna klasser: substantiv, adjektiv, verb, adverb Ständiga nybildningar
Läs merBEGREPP HITTILLS FÖRELÄSNING 2 SAMMANSATTA UTTRYCK - SCHEME DATORSPRÅK
FÖRELÄSNING 2 Viss repetition av Fö1 Rekursivt fallanalys Rekursiva beskrivningar BEGREPP HITTILLS Konstant, Namn, Procedur/Funktion, LAMBDA, Parameter, Argument, Kropp, Villkor/Rekursion, Funktionsanrop,
Läs merTvå-nivåmodellen, TWOL. 2D1418 Språkteknologi, Nada KTH Höstterminen 2004 Lisa Lagerkvist, Me-01
Två-nivåmodellen, TWOL 2D1418 Språkteknologi, Nada KTH Höstterminen 2004 Lisa Lagerkvist, Me-01 Inledning Morfologisk parsning är nödvändig i de flesta språkteknologiska tillämpningar eftersom man nästan
Läs merLogik och kontrollstrukturer
Logik och kontrollstrukturer Flödet av instruktioner i ett programmeringsspråk bygger vi upp med hjälp av dess kontrollstrukturer. I C har vi exemplen if, if else, while, do while. Dessutom finns switch
Läs merMATEMATIKENS SPRÅK. Avsnitt 1
Avsnitt 1 MATEMATIKENS SPRÅK Varje vetenskap, liksom varje yrke, har sitt eget språk som ofta är en blandning av vardagliga ord och speciella termer. En instruktionshandbok för ett kylskåp eller för en
Läs merEn introduktion till logik
rasmus.blanck@gu.se FT1200, LC1510 och LGFI52 VT2017 Först: Tack till Martin Kaså, som gett mig tillstånd att använda och bearbeta dessa ljusbilder. Vad är logik? Slogan: Logik undersöker vilka argument
Läs merFöreläsning 3: Booleans, if, switch
TDA 545: Objektorienterad programmering Föreläsning 3: Booleans, if, switch Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Påminnelse om klasser och objekt Boll boll1 = new Boll(5,12); skapar ett nytt
Läs merTypsystem. Typsystem... Typsystem... Typsystem... 2 *
Typsystem Typsystem finns i alla programmeringsspråk. Avsikten med typsystem är att kontrollera att uttryck är säkra i den bemärkelsen att innebörden i operanderna är klar och inte är motsägelsefull och
Läs merProgrammering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p
Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Skriven av Michael Andersson Introduktion Programmering I högnivåspråk fokuserar på själv problemet (algoritmen) istället
Läs merVariabler och konstanter
Variabler och konstanter Deklareras automatisk när man stoppar in data i dem. X = 7 Y = A Z = Kalle Definieras av att de har: ett namn (X) en datatyp (Integer) ett värde (t.ex. 7) Lagras i datorns minne!
Läs merNågra inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.
Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E Föreläsning 4: Villkor och rekursion Konverterar mellan de grundläggande typerna: >>> int("") >>> int(.999) >>> float().0
Läs merTypsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19
Typsystem Typsystem finns i alla programmeringsspråk. Avsikten med typsystem är att kontrollera att uttryck är säkra i den bemärkelsen att innebörden i operanderna är klar och inte är motsägelsefull och
Läs merDatorn har utvecklats till vårt viktigaste. Datorn som språkgranskare SPRÅKTEKNOLOGI OLA KNUTSSON
SPRÅKTEKNOLOGI Datorn som språkgranskare OLA KNUTSSON Datorerna kan inte bara rätta stavfel utan också särskrivningar, böjningsfel, syftningsfel och grammatiska fel. Men fortfarande förslår språkgranskningsprogrammen
Läs merTDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner
Läs merFöreläsning 9 Innehåll
Föreläsning 9 Innehåll Binära sökträd algoritmer för sökning, insättning och borttagning, implementering effektivitet balanserade binära sökträd, AVL-träd Abstrakta datatyperna mängd (eng. Set) och lexikon
Läs merIntroduktion till formella metoder Programmeringsmetodik 1. Inledning
Introduktion till formella metoder Programmeringsmetodik 1. Inledning Fokus på imperativa program (ex. C, Java) program betyder härefter ett imperativt program Program bestäms i en abstrakt mening av hur
Läs merFöreläsning 5 Mer om funktioner, villkor
Föreläsning 5 Mer om funktioner, villkor Grundkurs i programmering Jan Lönnberg Institutionen för datateknik -universitetets högskola för teknikvetenskaper 15.9.2011 Varför? Det finns sammanhang där ett
Läs merDagens föreläsning Programmering i Lisp. - Bindning av variabler (avs 14.6) fria variabler statisk/lexikalisk och dynamisk bindning
1 Dagens föreläsning Programmering i Lisp - Block, räckvidd - Bindning av variabler (avs 14.6) fria variabler statisk/lexikalisk och dynamisk bindning - Felhantering (kap 17) icke-normala återhopp catch
Läs merPython. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.
är, som Scheme, ett interpreterat språk men det finns kompilatorer för. När man interpreterar ett språk tillhandahåller man en interpretator som läser sats för sats och försöker tolka den. När man kompilerar
Läs merPython. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.
är, som Scheme, ett interpreterat språk men det finns kompilatorer för. När man interpreterar ett språk tillhandahåller man en interpretator som läser sats för sats och försöker tolka den. När man kompilerar
Läs merFöreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera
Föreläsning 2 Variabler, tilldelning och kodblock if-satsen Logiska operatorer Andra operatorer Att programmera Variabler Det är i variabler som all data (information) lagras. Genom att ändra värde på
Läs meri LabVIEW. Några programmeringstekniska grundbegrepp
Institutionen för elektroteknik Några programmeringstekniska grundbegrepp 1999-02-16 Inledning Inom datorprogrammering förekommer ett antal grundbegrepp som är i stort sett likadana oberoende om vi talar
Läs merÖversikt över Visual Basic
Översikt över Visual Basic Om denna översikt Denna översikt ger en kort introduktion till de viktigaste delarna i programspråket Visual Basic 6.0. På alla ställen där det beskrivs hur man skriver kod gäller
Läs merObjektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Outline Java Språket Utmatning av Sträng litteraler Variabler
Läs mer729G04 Programmering och diskret matematik
Tentamen 729G04, 2013-02-15 1(9) 729G04 Programmering och diskret matematik Tentamen 2013 02 15 kl 14.00 19.00 Tillåtna hjälpmedel: Dator, penna, papper, linjal, suddgummi, godkänd(a) bok/böcker Uppgifter:
Läs merGrundläggande datalogi - Övning 9
Grundläggande datalogi - Övning 9 Björn Terelius January 30, 2009 Ett formellt språk är en (oftast oändlig) mängd strängar. Språket definieras av en syntax som är en samling regler för hur man får bilda
Läs mer732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner
732G11 Linköpings universitet 2011-01-21 1 2 3 4 5 6 Skapa program Kompilera: Källkod Kompilator bytekod Köra: Bytekod Virtuell maskin Ett riktigt program Hej.java class Hej { public static void main (
Läs merFöreläsning Datastrukturer (DAT037)
Föreläsning Datastrukturer (DAT037) Nils Anders Danielsson 2015-11-23 Idag Mer om grafer: Minsta uppspännande träd (för oriktade grafer). Djupet först-sökning. Minsta uppspännande träd Träd (utan rot)
Läs merDatorlingvistisk grammatik
Datorlingvistisk grammatik Svenskans satser m.m. http://stp.lingfil.uu.se/~matsd/uv/uv11/dg/ Mats Dahllöf Institutionen för lingvistik och filologi Januari 2011 Satser Satserna utgör den mest mångfacetterade
Läs merDeklarativ programmering
Deklarativ programmering TDP007 Konstruktion av datorspråk Föreläsning 7 Peter Dalenius Institutionen för datavetenskap 2014-03-03 Deklarativ programmering Program skrivet i ett deklarativt språk logikspråk,
Läs merParsningens olika nivåer
Parsning Språkteknologi DH418 Ola Knutsson Varför parsning? Grammatikkontroll Fråge-svarsystem Maskinöversättning Semantisk analys (vad menas?) Testa grammatikformaliser och grammatiker (undvika länsstolslingvistik)
Läs merDagens föreläsning Programmering i Lisp Fö 7. Sammanfattning funktionell programmering Exempel på funktionella programspråk
1 Dagens föreläsning Programmering i Lisp Fö 7 Kopplingen funktionella programmering och diskret matematik. Jämför vad ni hittills gjort i denna kurs och i den diskreta matematiken, med referenser in i
Läs merPre-editering och maskinöversättning. Convertus AB
Pre-editering och maskinöversättning Bakgrund Convertus roll i DigInclude är att utveckla och tillhandahålla översättningstjänster för översättning av användarorienterad myndighetsinformation Översättning
Läs merDeklarativ programmering
Kursens mål Deklarativ programmering Peter Dalenius petda@ida.liu.se Institutionen för datavetenskap Linköpings universitet 2008-02-26 redogöra för och använda reguljära uttryck använda XML för att definera
Läs mer729G74 IT och programmering, grundkurs. Tema 2, Föreläsning 2 Jody Foo,
729G74 IT och programmering, grundkurs Tema 2, Föreläsning 2 Jody Foo, jody.foo@liu.se Föreläsningsöversikt Kursinfo: återkoppling Muddy Cards och kompletteringar Diskret matematik Python: Programmering
Läs merKompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering
Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk
Läs merTentamen i. TDDC67 Funktionell programmering och Lisp
1 Linköpings tekniska högskola Institutionen för datavetenskap Anders Haraldsson Tentamen i TDDC67 Funktionell programmering och Lisp och äldre kurser TDDC57 Programmering, Lisp och funktionell programmering
Läs merFöreläsning 6 Datastrukturer (DAT037)
Föreläsning 6 Datastrukturer (DAT037) Fredrik Lindblad 1 15 november 2017 1 Slides skapade av Nils Anders Danielsson har använts som utgångspunkt. Se http://www.cse.chalmers.se/edu/year/2015/course/dat037
Läs merKungl. Tekniska högskolan NADA Grundformer med Stava
Kungl. Tekniska högskolan NADA Grundformer med Stava Språkteknologi 2D1418 Höstterminen 2004 Författare: Andreas Pettersson az@kth.se 1. Bakgrund Om man automatiskt ska plocka ut de informationsbärande
Läs merDD1314 Programmeringsteknik
Skolan för Datavetenskap och kommunikation DD1314 Programmeringsteknik Föreläsning 1 o print o variabler o reserverade ord o input o kommentarer o beräkningar o datatyper o if-satser Kursinformation Programmering:
Läs merModellering med kontextfri grammatik Kontextfri grammatik - definition En enkel kontextfri grammatik Klasser av formella språk
Modellering med kontextfri grammatik Kontextfri grammatik - definition Kontextfri grammatik (CFG) definition modellering av frasstruktur andra exempel Dependensgrammatik Trädbanker Varianter av kontextfri
Läs merTentamen i. TDDA 69 Data och programstrukturer
1 Linköpings tekniska högskola Institutionen för datavetenskap Anders Haraldsson Tentamen i TDDA 69 Data och programstrukturer Torsdag den 14 januari 2009, kl 14-18 Hjälpmedel: Inga. Poänggränser: Maximalt
Läs mer