Treebank Search with Tree Automata MonaSearch Querying Linguistic Treebanks with Monadic Second Order Logic
|
|
- Johnathan Greer
- 8 years ago
- Views:
Transcription
1 Treebank Search with Tree Automata MonaSearch Querying Linguistic Treebanks with Monadic Second Order Logic Authors: H. Maryns, S. Kepser Speaker: Stephanie Ehrbächer July, 31th
2 Treebank Search with Tree Automata MonaSearch Querying Linguistic Treebanks with Monadic Second Order Logic Content Treebanks Query language: Monadic Second Order Logic Query tool: MonaSearch
3 Part 1: Treebanks Part 1: Motivation and Treebanks
4 Treebanks Remember the part of our topic: corpus search corpus or text corpus (in linguistics): large structured set of texts usually electronically stored and processed What is a treebank? a text corpus each sentence parsed, annotated with syntactic structure syntactic structure represented as tree treebank parsed corpus treebank 4
5 Treebanks can be created completely manually: each sentence is annotated with syntactical structure by linguists semi automatically: syntactic structure is assigned by parser and checked by linguist; if necessary corrected Two main groups can be distinguished: treebanks that annotate phrase structure (e.g. the Penn Treebank) treebanks that annotate dependency structure (e.g. the Prague Dependency Treebank) 5
6 Examples for Treebanks TIGER treebank ( stuttgart.de/projekte/tiger) NEGRA ( saarland.de/projects/sfb378/negra corpus) TueBa D/S The Tuebingen Treebank of Spoken German ( tuebingen.de/en_tuebads.shtml) TueBa D/Z The Tuebingen Treebank of Written German ( tuebingen.de/en_tuebadz.shtml) Penn ( English Dependency Treebank ( British Component of the International Corpus of English (ICE GB ; usage/projects/ice gb) 6
7 Purpose of Treebanks Treebank can be used to investigate linguistic theories to study syntactic phenomena for training or testing parsers 7
8 Purpose of Treebanks Example problem: we want to investigate how often the order verb/subject occurs in German or English sentences (yes/no ques tions) What are we doing 8
9 Purpose of Treebanks Example problem: we want to investigate how often the order verb/subject occurs in German or English sentences (yes/no ques tions) What are we doing We investigate a treebank, but what do we have to mind 8
10 Treebanks Treebanks can be large: treebanks of several tens of thousends of trees are no exception manually searching not possible query tool necessary query tool has to have expressive power; reason: small answer sets 9
11 Overview MonaSearch: query tool for linguistic treebanks Query language monadic second order logic MSO MonaSearch MSO query TA treebank Queries are compiled into tree automata Each tree of the linguistic treebank is checked, if the TA of the query accepts it 10
12 PART 2: Query Language: Monadic Second Order Logic MSO PART 2: Query Language: Monadic Second Order Logic MSO
13 Monadic Second Order Logic MSO Here used as query language Decidable over trees Extension of first order predicate logic by set variables Set variables can be quantified over, representing (finite) sets of nodes 12
14 Monadic Second Order Logic MSO Here used as query language Decidable over trees Extension of first order predicate logic by set variables Set variables can be quantified over, representing (finite) sets of nodes Example: set variable P( x (x P)) There is an empty set. P( x (x P)) There is no empty set. 12
15 MSO Examples For all predicates holds: predicate holds for So krates or predicate does not hold for Sokrates. P((Sokrates P) (Sokrates P)) Peano's axiom of induction for natural numbers: For all predicates P with arity 1 holds: if P holds for 0 and if it holds with all element x also for the successor x' of x, then the predicate holds for all natural numbers. P((0 P) x((x P) (x' P)) x(x P)) 13
16 Monadic Second Order Logic MSO Monadic: remember that arity of predicates is 1 Counter example: P x y z(pxyz) Why MSO and not simply FOL? 14
17 Monadic Second Order Logic MSO Monadic: remember that arity of predicates is 1 Counter example: P x y z(pxyz) Why MSO and not simply FOL? Necessary expressive power Example: ability to express transitive closure of any binary relation that is definable in this language 14
18 Monadic Second Order Logic MSO Queries ending in a sequence of prepositional phrases: embedded:...[pp...[pp...[pp...[pp...]]]] The dog buried the bone [pp behind the tree [pp in the garden [pp in front of the house [pp at the end of the street ]]]]. independent:...[pp...][pp...][pp...][pp...] The dog buried the bone [pp with his paws ] [pp under a stone ] [pp behind the tree ] [pp in the afternoon ]. 15
19 Monadic Second Order Logic MSO Queries ending in a sequence of prepositional phrases: embedded:...[pp...[pp...[pp...[pp...]]]] The dog buried the bone [pp behind the tree [pp in the garden [pp in front of the house [pp at the end of the street ]]]]. independent:...[pp...][pp...][pp...][pp...] The dog buried the bone [pp with his paws ] [pp under a stone ] [pp behind the tree ] [pp in the afternoon ]. Consider extensions of arbitrary length of PPs. Can both queries be formulated in FOL now? Try it! 15
20 Monadic Second Order Logic MSO Queries ending in a sequence of prepositional phrases: embedded:...[pp...[pp...[pp...[pp...]]]] The dog buried the bone [pp behind the tree [pp in the garden [pp in front of the house [pp at the end of the street ]]]]. independent:...[pp...][pp...][pp...][pp...] The dog buried the bone [pp with his paws ] [pp under a stone ] [pp behind the tree ] [pp in the afternoon ]. Consider extensions of arbitrary length of PPs. Can both queries be formulated in FOL now? Try it! Which query cannot be expressed in FOL? 15
21 Monadic Second Order Logic MSO Queries ending in a sequence of prepositional phrases: embedded:...[pp...[pp...[pp...[pp...]]]] The dog buried the bone [pp behind the tree [pp in the garden [pp in front of the house [pp at the end of the street ]]]]. extension cannot be independent:...[pp...][pp...][pp...][pp...] expressed in FOL. Why? The dog buried the bone [pp with his paws ] [pp under a stone ] [pp behind the tree ] [pp in the afternoon ]. Consider extensions of arbitrary length of PPs. Can both queries be formulated in FOL now? Try it! Which query cannot be expressed in FOL? 15
22 Monadic Second Order Logic MSO independent:...[pp...][pp...][pp...][pp...] The dog buried the bone [pp with his paws ] [pp under a stone ] [pp behind the tree ] [pp in the afternoon ]... extension.... S NP VP D N V NP D N PP PP... PP The dog buried the bone with his paws under a stone FOL x: Px 16
23 Monadic Second Order Logic MSO embedded:...[pp...[pp...[pp...[pp...]]]] The dog buried the bone [pp behind the tree [pp in the garden [pp in front of the house [pp at the end of the street... extension... ]]]]. S NP VP D N V NP The dog buried D N PP the bone behind the tree PP in the garden PP 17
24 Monadic Second Order Logic MSO embedded:...[pp...[pp...[pp...[pp...]]]] The dog buried the bone [pp behind the tree [pp in the garden [pp in front of the house [pp at the end of the street... extension... ]]]]. Transitivity S cannot be expressed in NP VP FOL! D N V NP The dog buried D N PP the bone behind the tree PP in the garden PP 17
25 Monadic Second Order Logic MSO embedded:...[pp...[pp...[pp...[pp...]]]] The dog buried the bone [pp behind the tree [pp in the garden [pp in front of the house [pp at the end of the street... extension... ]]]]. Transitivity S cannot be expressed in NP VP FOL! D N V NP The dog buried D N PP But in MSO! the bone behind the tree PP remember Peano's axiom: P((0 P) x((x P) (x' P)) x(x P)) in the garden trans. closure of dom(pp,np): new relation highest PP and deeply embedded NP of this relation PP 17
26 S NP VP D N V NP The dog burried D N PP the bone P NP behind D N PP the tree P NP in D N PP the garden NP 17.a
27 WS2S Logic WS2S weak monadic second order theory of 2 successors obtained by WS1S: two successors (left and right) instead of one (+1) WS1S interpretation corresponds to strings, first order variable interpreted as natural number WS2S interpretation corresponds to finite labeled trees, first order variable interpreted as position in infinite binary tree MonaSearch resp. Mona can run either in linear mode or in tree mode 18
28 WS2S example Prefix ordering: k=2 x y= X.((y X ( z.( zi X) z X)) x X i=1 contains y closed by predecessor every set containing y and closed by predecessor contains x (here restricted for 2 successors) Note: can be expressed by WSkS formulas, thus it can actually be removed 19
29 Our Example in MSO Example problem: we want to investigate how often the order verb/subject occurs in German or English sentences (yes/no ques tions) x,y,z(cat(x)=simpx cat(y)=vxfin + + fct(z) = ON x y x z y <z) There exists a node with category SIMPX, a node with category VXFIN and a node with function ON... ON codes grammatical function subject in T Ba D/Z 20
30 MSO in the Querying process Strong connection between MSO and tree automata: MSO formula bottom up tree automata, that accepts the set of corresponding trees MSO formula automaton algorithm 21
31 MSO in the Querying process General evaluation stratey of MonaSearch: Step 1 Convert user query into TA Step2 Run TA on each tree in the tree bank 22
32 Part 3: Query Tool: Mona and Mona Search Part 3: Query Tool: MonaSearch l
33 What is MonaSearch? MonaSearch Mona MonaSearch query tool for linguistic treebanks query language MSO uses Mona 24
34 What is MonaSearch? MonaSearch Mona Mona tree automata toolkit that compiles MSO formulas in TA developed for hardware verification, but also applicable to query treebanks pure monadic second order logic of two successors, resp. one successor no extensions only binary trees no node labels 25
35 Strategy to employ MONA to query treebanks Mona Treebank MSO trees formula transfor formula compiler mation special variant of TA transformed trees library function: check each tree 26 output if formula satisfiable representation of a compiled automaton into a file
36 Strategy to employ MONA to query treebanks Mona Treebank MSO trees formula transfor formula compiler How to do this transformation? mation special variant of TA transformed trees library function: check each tree 27 output if formula satisfiable representation of a compiled automaton into a file
37 MonaSearch Precompilation of Treebanks Problems of arbitrary trees disconnected subparts root a b c d 28
38 MonaSearch Precompilation of Treebanks Problems of arbitrary trees disconnected subparts root a b c d Solution: Simplified structures integrate disconnected subparts by introducing a new virtual root; connect disconnected subparts to this super root super root root d a b c 28
39 MonaSearch Precompilation of Treebanks Example tree of TIGER corpus VROOT virtual root S OC VP OP MO NG VZ PM Damit sei jedoch nicht zu rechnen : PROAV VAFIN ADV PTKNEG PTKZU VVINF $. 3.Sg.Pres.Konj. damit sein jedoch nicht zu rechnen : 29
40 MonaSearch Precompilation of Treebanks Problems of arbitrary trees crossing edges x. y a b 30
41 MonaSearch Precompilation of Treebanks Problems of arbitrary trees crossing edges x. y a b Solution: Simplified structures ignore crossing edges; take only order of children as seen by the parents into account x y b a 30
42 MonaSearch Precompilation of Treebanks crossing edges 31 31
43 MonaSearch Precompilation of Treebanks Problems of arbitrary trees secondary relations x y z a b Solution: Simplified structures: ignore secondary relations x y z a b 32
44 MonaSearch Precompilation of Treebanks Tasks of precompilation: 1. trees which are arbitrarily branching have to be transformed in binary trees 2. linguistic labels have to be taken care of 33
45 MonaSearch Precompilation of Treebanks Tasks of precompilation: 1. trees which are arbitrarily branching have to be transformed in binary trees 2. linguistic labels have to be taken care of How can this be done? 33
46 MonaSearch Precompilation of Treebanks Tasks of precompilation: 1. trees which are arbitrarily branching have to be transformed in binary trees 2. linguistic labels have to be taken care of How can this be done? Use of First Child Next Sibling encoding Edge labels are moved down to node below it 33
47 MonaSearch Precompilation of Treebanks SIMPX KOORD LK ON PRED MOD MF VXFIN NX ADVX ADJX Oder ist Bremerhaven nicht günstiger? KON VAFIN NE PTKNEG ADJD $. Example tree of TüBa D/Z 34
48 First Child Next Sibling Encoding x in original tree > x' in the binary tree if x has any children, call its leftmost child y, then y' will become the left child of x' x x' y... y' if x has any right siblings, call the leftmost one z, then z' will become the right child of x' x z... x'... y y z' 35
49 Moving down of Edge Labels SIMPX KOORD LK ON PRED MOD MF VXFIN NX ADVX ADJX Oder ist Bremerhaven nicht günstiger? KON VAFIN NE PTKNEG ADJD $. 36
50 Moving down of Edge Labels SIMPX KOORD LK MF VXFIN NX ON ADVX MOD ADJX PRED KON VAFIN NE PTKNEG ADJD $. Oder ist Bremerhaven nicht günstiger? 37
51 Disconnected Subtrees SIMPX KOORD LK MF VXFIN NX ON ADVX MOD ADJX PRED KON VAFIN NE PTKNEG ADJD $. Oder ist Bremerhaven nicht günstiger? 38
52 Virtual Root (virtual root) $? SIMPX KOORD MF LK VXFIN NX ON ADVX MOD ADJX PRED KON VAFIN NE PTKNEG ADJD Oder ist Bremerhaven nicht günstiger 39
53 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD MF LK VXFIN NX ON ADVX MOD ADJX PRED KON VAFIN NE PTKNEG ADJD Oder ist Bremerhaven nicht günstiger 40
54 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD MF LK VXFIN NX ON ADVX MOD ADJX PRED KON VAFIN NE PTKNEG ADJD Oder ist Bremerhaven nicht günstiger 41
55 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD MF LK VXFIN NX ADVX ADJX ON MOD PRED KON VAFIN NE PTKNEG ADJD Oder ist Bremerhaven nicht günstiger 42
56 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD LK MF VXFIN KON VAFIN NX ON ADVX MOD ADJX PRED Oder ist NE PTKNEG ADJD Bremerhaven nicht günstiger 43
57 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD LK MF VXFIN KON VAFIN NX ON ADVX MOD ADJX PRED Oder ist NE PTKNEG ADJD Bremerhaven nicht günstiger 44
58 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD KON Oder LK MF VXFIN VAFIN NX ON ADVX MOD ADJX PRED ist NE PTKNEG ADJD Bremerhaven nicht günstiger 45
59 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD KON Oder LK MF VXFIN VAFIN NX ON ADVX MOD ADJX PRED ist NE PTKNEG ADJD Bremerhaven nicht günstiger 46
60 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD KON LK Oder MF VXFIN NX ADVX MOD ON VAFIN NE PTKNEG ist Bremerhaven nicht ADJX PRED ADJD günstiger 47
61 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD KON LK Oder MF VXFIN NX ADVX MOD ON VAFIN NE PTKNEG ist Bremerhaven nicht ADJX PRED ADJD günstiger 48
62 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD KON LK Oder MF VXFIN NX VAFIN NE ON ADVX ist Bremerhaven MOD PTKNEG ADJX PRED nicht ADJD günstiger 49
63 First Child Next Sibling Encoding (virtual root) $? SIMPX KOORD KON Oder LK MF VXFIN NX ON VAFIN NE ADVX MOD ist Bremerhaven ADJX PTKNEG PRED nicht ADJD günstiger Binary Coding 50
64 Steps of Querying in Detail translation ' 1. getting a MSO query on original treebank from the user; 2. translating the query into a MONA formula ' on binary trees 3. compiling the MONA formula into a MONA tree automaton 4. for each tree of the precompiled treebank: 1. preparing the tree for the query 2. running the automaton on the translated tree, noting wether it is accepted or not; 5. presenting the results to the user 51
65 Querying most connectives (boolean connectives, quantification, some atomic relations): Mona counterpart can be taken over directly problem: relations that express s.th. about the shape of the tree, e.g. dominance and precedence solution: auxiliary predicates on the binary tree, defined in MONA language dom(x,y) x dominates y in the binary tree right_branch(x,y) y lies at the branch of right children starting at x 52
66 Querying: Translation of the parent and precedence relation Relation Formula Translation parenthood x y ex1 z: x.0 = z & right_branch(z,y) precedence x < y ex1 z: (x = z dom(z.0,x)) & dom(z.1,y) + dominance x y ex1 z: x.0 = z & dom(z,y) 53
67 Querying: possible result of our example Example problem: we want to investigate how often the order verb/subject occurs in German or English sentences (yes/no ques tions) x,y,z(cat(x)=simpx cat(y)=vxfin + fct(z) = ON x + y x z y <z) 54
68 Querying: possible result of our example SIMPX KOORD LK ON PRED MOD MF VXFIN NX ADVX ADJX Oder ist Bremerhaven nicht günstiger? KON VAFIN NE PTKNEG ADJD $. Example tree of TüBa D/Z 55
69 Guided Tree Automata Question: Are normal bottom up tree automata sufficient for deciding validity and generating counter examples in WS2S? 56
70 Guided Tree Automata Question: Are normal bottom up tree automata sufficient for deciding validity and generating counter examples in WS2S? Answer: Theoretically yes. But: transition tables have an additional dimension compared to string automata > extra level of complexity 56
71 Guided Tree Automata Question: Are normal bottom up tree automata sufficient for deciding validity and generating counter examples in WS2S? Answer: Theoretically yes. But: transition tables have an additional dimension compared to string automata > extra level of complexity problem: state space explosions Mona solution: special kind of tree automata, called Guided Tree Automata 56
72 Guided Tree Automata Guide G = ( D,, ) top down deterministic TA ; states are used to d0 designate state space names of bottom up TA D finite set of state space names : D D D guide function d 0 D initial state space name Guided Tree Automaton GTA with guide G is a set of bottom MG up tree automata: M G = {Q d }d D,, { d }d D, {q d }d D, F guide function is used here How to use this guide? 57
73 Guided Tree Automata How to use this guide? Given: tree t; GTA accepts t: 1. State space is assigned to every node in t. Tree can be labeled top down with state spaces according to guide function; 2. Each subtree of the resulting tree is assigned a state in a bottom up style. GTA can be seen as ordinary tree automaton, where state space has been factorized according to the guide GTA with only one state space is an ordinary tree automaton 58
74 Guided Tree Automata Guide defined in the header with the guide construct Example: guide a >(b,c), b >(d,e), c >(c,c), d >(d,d), e >(e,f), f >(f,f) initial state space a,b,c,d,e state spaces (boolean state space, reserved for bool variable) Restricting variables to state spaces also by universes 59
75 Example: Exponential Savings with Guides ws2s; var2 A,B; ex1 p1,p2,p3,p4,p5: p1<p2 & p2<p3 & p3<p4 &p4<p5 & A = {p1,p2,p3,p4,p5}; ex1 p1,p2,p3,p4,p5,p6,p7: p1<p2 & p2<p3 & p3<p4 &p4<p5 & p5<p6 & p6<p7 & A = {p1,p2,p3,p4,p5,p6,p7}; ws2s; guide d0 >(a,b), a >(a,a), b >(b,b) universe ua:0, ub:1; var2 [ua] A; var2 [ub] B; ex1 [ua] p1,p2,p3,p4,p5: p1<p2 & p2<p3 & p3<p4 &p4<p5 & A = {p1,p2,p3,p4,p5}; ex1 [ub] p1,p2,p3,p4,p5,p6,p7: p1<p2 & p2<p3 & p3<p4 &p4<p5 & p5<p6 & p6<p7 & A = {p1,p2,p3,p4,p5,p6,p7}; 60
76 Performance: Comparison for TIGERSearch, fsq and MonaSearch 1. An NP dominating a S dominating a PP 2. An NP dominating a S dominating a PP and an NP, which do not dominate each other 3. Sentences where the verb precedes the subject 4. An NP not dominating a S which dominates a PP 5. A PP dominating a NP which is part of a chain of embedded PPs Query TIGERSearch fsq MonaSearch red: TIGER treebank green: T Ba D/Z time in seconds 61
77 Summary We considered Treebanks Query language MSO Query tool MonaSearch
78 Conclusions MonaSearch very high expressive power by MSO high performance of query engine fastest query system for advanced queries
79 THANK YOU FOR YOUR ATTENTION
80 THANK YOU FOR YOUR ATTENTION QUESTIONS?
Topological Field Chunking in German
Topological Field Chunking in German Jorn Veenstra, Frank H. Müller, Tylman Ule [veenstra,fhm,ule]@sfs.uni-tuebingen.de ESSLLI Summerschool Workshop on Machine Learning Approaches in Computational Linguistics
More informationMotivation. Korpus-Abfrage: Werkzeuge und Sprachen. Overview. Languages of Corpus Query. SARA Query Possibilities 1
Korpus-Abfrage: Werkzeuge und Sprachen Gastreferat zur Vorlesung Korpuslinguistik mit und für Computerlinguistik Charlotte Merz 3. Dezember 2002 Motivation Lizentiatsarbeit: A Corpus Query Tool for Automatically
More informationToday s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary
Today s Agenda Quiz 4 Temporal Logic Formal Methods in Software Engineering 1 Automata and Logic Introduction Buchi Automata Linear Time Logic Summary Formal Methods in Software Engineering 2 1 Buchi Automata
More informationInformatique Fondamentale IMA S8
Informatique Fondamentale IMA S8 Cours 1 - Intro + schedule + finite state machines Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@polytech-lille.fr Université Lille 1 - Polytech Lille
More informationAlgebraic Recognizability of Languages
of Languages LaBRI, Université Bordeaux-1 and CNRS MFCS Conference, Prague, August 2004 The general problem Problem: to specify and analyse infinite sets by finite means The general problem Problem: to
More informationTesting LTL Formula Translation into Büchi Automata
Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland
More informationParsing Technology and its role in Legacy Modernization. A Metaware White Paper
Parsing Technology and its role in Legacy Modernization A Metaware White Paper 1 INTRODUCTION In the two last decades there has been an explosion of interest in software tools that can automate key tasks
More informationCompiler Construction
Compiler Construction Regular expressions Scanning Görel Hedin Reviderad 2013 01 23.a 2013 Compiler Construction 2013 F02-1 Compiler overview source code lexical analysis tokens intermediate code generation
More informationConstraints in Phrase Structure Grammar
Constraints in Phrase Structure Grammar Phrase Structure Grammar no movement, no transformations, context-free rules X/Y = X is a category which dominates a missing category Y Let G be the set of basic
More informationSyntax: Phrases. 1. The phrase
Syntax: Phrases Sentences can be divided into phrases. A phrase is a group of words forming a unit and united around a head, the most important part of the phrase. The head can be a noun NP, a verb VP,
More informationCINTIL-PropBank. CINTIL-PropBank Sub-corpus id Sentences Tokens Domain Sentences for regression atsts 779 5,654 Test
CINTIL-PropBank I. Basic Information 1.1. Corpus information The CINTIL-PropBank (Branco et al., 2012) is a set of sentences annotated with their constituency structure and semantic role tags, composed
More information03 - Lexical Analysis
03 - Lexical Analysis First, let s see a simplified overview of the compilation process: source code file (sequence of char) Step 2: parsing (syntax analysis) arse Tree Step 1: scanning (lexical analysis)
More informationBounded Treewidth in Knowledge Representation and Reasoning 1
Bounded Treewidth in Knowledge Representation and Reasoning 1 Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien Luminy, October 2010 1 Joint work with G.
More informationVIQTORYA A Visual Query Tool for Syntactically Annotated Corpora
VIQTORYA A Visual Query Tool for Syntactically Annotated Corpora Ilona Steiner, Laura Kallmeyer Seminar für Sprachwissenschaft, Universität Tübingen Wilhelmstr. 113, D 72074 Tübingen, Germany steiner@sfs.uni-tuebingen.de
More informationFixed-Point Logics and Computation
1 Fixed-Point Logics and Computation Symposium on the Unusual Effectiveness of Logic in Computer Science University of Cambridge 2 Mathematical Logic Mathematical logic seeks to formalise the process of
More informationThe Model Checker SPIN
The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(
More informationReading 13 : Finite State Automata and Regular Expressions
CS/Math 24: Introduction to Discrete Mathematics Fall 25 Reading 3 : Finite State Automata and Regular Expressions Instructors: Beck Hasti, Gautam Prakriya In this reading we study a mathematical model
More informationSymbiosis of Evolutionary Techniques and Statistical Natural Language Processing
1 Symbiosis of Evolutionary Techniques and Statistical Natural Language Processing Lourdes Araujo Dpto. Sistemas Informáticos y Programación, Univ. Complutense, Madrid 28040, SPAIN (email: lurdes@sip.ucm.es)
More informationFormal Verification of Software
Formal Verification of Software Sabine Broda Department of Computer Science/FCUP 12 de Novembro de 2014 Sabine Broda (DCC-FCUP) Formal Verification of Software 12 de Novembro de 2014 1 / 26 Formal Verification
More informationDynamic Cognitive Modeling IV
Dynamic Cognitive Modeling IV CLS2010 - Computational Linguistics Summer Events University of Zadar 23.08.2010 27.08.2010 Department of German Language and Linguistics Humboldt Universität zu Berlin Overview
More informationTemporal Logics. Computation Tree Logic
Temporal Logics CTL: definition, relationship between operators, adequate sets, specifying properties, safety/liveness/fairness Modeling: sequential, concurrent systems; maximum parallelism/interleaving
More informationOutline of today s lecture
Outline of today s lecture Generative grammar Simple context free grammars Probabilistic CFGs Formalism power requirements Parsing Modelling syntactic structure of phrases and sentences. Why is it useful?
More informationTest Case Generation for Ultimately Periodic Paths Joint work with Saddek Bensalem Hongyang Qu Stavros Tripakis Lenore Zuck Accepted to HVC 2007 How to find the condition to execute a path? (weakest precondition
More informationName: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.
Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to
More informationT-79.186 Reactive Systems: Introduction and Finite State Automata
T-79.186 Reactive Systems: Introduction and Finite State Automata Timo Latvala 14.1.2004 Reactive Systems: Introduction and Finite State Automata 1-1 Reactive Systems Reactive systems are a class of software
More informationSoftware Engineering using Formal Methods
Software Engineering using Formal Methods Model Checking with Temporal Logic Wolfgang Ahrendt 24th September 2013 SEFM: Model Checking with Temporal Logic /GU 130924 1 / 33 Model Checking with Spin model
More informationHow To Understand A Sentence In A Syntactic Analysis
AN AUGMENTED STATE TRANSITION NETWORK ANALYSIS PROCEDURE Daniel G. Bobrow Bolt, Beranek and Newman, Inc. Cambridge, Massachusetts Bruce Eraser Language Research Foundation Cambridge, Massachusetts Summary
More informationThe Halting Problem is Undecidable
185 Corollary G = { M, w w L(M) } is not Turing-recognizable. Proof. = ERR, where ERR is the easy to decide language: ERR = { x { 0, 1 }* x does not have a prefix that is a valid code for a Turing machine
More informationLempel-Ziv Coding Adaptive Dictionary Compression Algorithm
Lempel-Ziv Coding Adaptive Dictionary Compression Algorithm 1. LZ77:Sliding Window Lempel-Ziv Algorithm [gzip, pkzip] Encode a string by finding the longest match anywhere within a window of past symbols
More informationBuilding a Question Classifier for a TREC-Style Question Answering System
Building a Question Classifier for a TREC-Style Question Answering System Richard May & Ari Steinberg Topic: Question Classification We define Question Classification (QC) here to be the task that, given
More informationSoftware Modeling and Verification
Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system
More informationInternational Journal of Software Engineering and Knowledge Engineering c World Scientific Publishing Company
International Journal of Software Engineering and Knowledge Engineering c World Scientific Publishing Company Rapid Construction of Software Comprehension Tools WELF LÖWE Software Technology Group, MSI,
More informationAutomata and Formal Languages
Automata and Formal Languages Winter 2009-2010 Yacov Hel-Or 1 What this course is all about This course is about mathematical models of computation We ll study different machine models (finite automata,
More informationAlgorithmic Software Verification
Algorithmic Software Verification (LTL Model Checking) Azadeh Farzan What is Verification Anyway? Proving (in a formal way) that program satisfies a specification written in a logical language. Formal
More informationSoftware Verification and Testing. Lecture Notes: Temporal Logics
Software Verification and Testing Lecture Notes: Temporal Logics Motivation traditional programs (whether terminating or non-terminating) can be modelled as relations are analysed wrt their input/output
More informationDEPENDENCY PARSING JOAKIM NIVRE
DEPENDENCY PARSING JOAKIM NIVRE Contents 1. Dependency Trees 1 2. Arc-Factored Models 3 3. Online Learning 3 4. Eisner s Algorithm 4 5. Spanning Tree Parsing 6 References 7 A dependency parser analyzes
More informationRuntime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection
Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Martin Leucker Technische Universität München (joint work with Andreas Bauer, Christian Schallhart et. al) FLACOS
More informationIntroduction to Automata Theory. Reading: Chapter 1
Introduction to Automata Theory Reading: Chapter 1 1 What is Automata Theory? Study of abstract computing devices, or machines Automaton = an abstract computing device Note: A device need not even be a
More informationLASSY: LARGE SCALE SYNTACTIC ANNOTATION OF WRITTEN DUTCH
LASSY: LARGE SCALE SYNTACTIC ANNOTATION OF WRITTEN DUTCH Gertjan van Noord Deliverable 3-4: Report Annotation of Lassy Small 1 1 Background Lassy Small is the Lassy corpus in which the syntactic annotations
More informationElena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer.
DBMS Architecture INSTRUCTION OPTIMIZER Database Management Systems MANAGEMENT OF ACCESS METHODS BUFFER MANAGER CONCURRENCY CONTROL RELIABILITY MANAGEMENT Index Files Data Files System Catalog BASE It
More informationRegular Languages and Finite State Machines
Regular Languages and Finite State Machines Plan for the Day: Mathematical preliminaries - some review One application formal definition of finite automata Examples 1 Sets A set is an unordered collection
More informationINF5820 Natural Language Processing - NLP. H2009 Jan Tore Lønning jtl@ifi.uio.no
INF5820 Natural Language Processing - NLP H2009 Jan Tore Lønning jtl@ifi.uio.no Semantic Role Labeling INF5830 Lecture 13 Nov 4, 2009 Today Some words about semantics Thematic/semantic roles PropBank &
More informationLexical Analysis and Scanning. Honors Compilers Feb 5 th 2001 Robert Dewar
Lexical Analysis and Scanning Honors Compilers Feb 5 th 2001 Robert Dewar The Input Read string input Might be sequence of characters (Unix) Might be sequence of lines (VMS) Character set ASCII ISO Latin-1
More informationGrammars and introduction to machine learning. Computers Playing Jeopardy! Course Stony Brook University
Grammars and introduction to machine learning Computers Playing Jeopardy! Course Stony Brook University Last class: grammars and parsing in Prolog Noun -> roller Verb thrills VP Verb NP S NP VP NP S VP
More informationFormal Languages and Automata Theory - Regular Expressions and Finite Automata -
Formal Languages and Automata Theory - Regular Expressions and Finite Automata - Samarjit Chakraborty Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology (ETH) Zürich March
More information1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++
Answer the following 1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ 2) Which data structure is needed to convert infix notations to postfix notations? Stack 3) The
More informationSemantic parsing with Structured SVM Ensemble Classification Models
Semantic parsing with Structured SVM Ensemble Classification Models Le-Minh Nguyen, Akira Shimazu, and Xuan-Hieu Phan Japan Advanced Institute of Science and Technology (JAIST) Asahidai 1-1, Nomi, Ishikawa,
More informationCS510 Software Engineering
CS510 Software Engineering Propositional Logic Asst. Prof. Mathias Payer Department of Computer Science Purdue University TA: Scott A. Carr Slides inspired by Xiangyu Zhang http://nebelwelt.net/teaching/15-cs510-se
More informationErrata: Carnie (2008) Constituent Structure. Oxford University Press (MAY 2009) A NOTE OF EXPLANATION:
Errata: Carnie (2008) Constituent Structure. Oxford University Press (MAY 2009) A NOTE OF EXPLANATION: Dear Readers. There are a very large number of errata for this book. Most are minor but some of them
More informationBinary Trees and Huffman Encoding Binary Search Trees
Binary Trees and Huffman Encoding Binary Search Trees Computer Science E119 Harvard Extension School Fall 2012 David G. Sullivan, Ph.D. Motivation: Maintaining a Sorted Collection of Data A data dictionary
More informationMonitoring Metric First-order Temporal Properties
Monitoring Metric First-order Temporal Properties DAVID BASIN, FELIX KLAEDTKE, SAMUEL MÜLLER, and EUGEN ZĂLINESCU, ETH Zurich Runtime monitoring is a general approach to verifying system properties at
More informationModel Checking II Temporal Logic Model Checking
1/32 Model Checking II Temporal Logic Model Checking Edmund M Clarke, Jr School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 2/32 Temporal Logic Model Checking Specification Language:
More informationCompiler I: Syntax Analysis Human Thought
Course map Compiler I: Syntax Analysis Human Thought Abstract design Chapters 9, 12 H.L. Language & Operating Sys. Compiler Chapters 10-11 Virtual Machine Software hierarchy Translator Chapters 7-8 Assembly
More informationSpecial Topics in Computer Science
Special Topics in Computer Science NLP in a Nutshell CS492B Spring Semester 2009 Jong C. Park Computer Science Department Korea Advanced Institute of Science and Technology INTRODUCTION Jong C. Park, CS
More informationPath Querying on Graph Databases
Path Querying on Graph Databases Jelle Hellings Hasselt University and transnational University of Limburg 1/38 Overview Graph Databases Motivation Walk Logic Relations with FO and MSO Relations with CTL
More informationAutomata Theory. Şubat 2006 Tuğrul Yılmaz Ankara Üniversitesi
Automata Theory Automata theory is the study of abstract computing devices. A. M. Turing studied an abstract machine that had all the capabilities of today s computers. Turing s goal was to describe the
More informationCHAPTER 7 GENERAL PROOF SYSTEMS
CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes
More informationFundamentals of Software Engineering
Fundamentals of Software Engineering Model Checking with Temporal Logic Ina Schaefer Institute for Software Systems Engineering TU Braunschweig, Germany Slides by Wolfgang Ahrendt, Richard Bubel, Reiner
More informationThe following themes form the major topics of this chapter: The terms and concepts related to trees (Section 5.2).
CHAPTER 5 The Tree Data Model There are many situations in which information has a hierarchical or nested structure like that found in family trees or organization charts. The abstraction that models hierarchical
More informationBinary Heap Algorithms
CS Data Structures and Algorithms Lecture Slides Wednesday, April 5, 2009 Glenn G. Chappell Department of Computer Science University of Alaska Fairbanks CHAPPELLG@member.ams.org 2005 2009 Glenn G. Chappell
More informationKybots, knowledge yielding robots German Rigau IXA group, UPV/EHU http://ixa.si.ehu.es
KYOTO () Intelligent Content and Semantics Knowledge Yielding Ontologies for Transition-Based Organization http://www.kyoto-project.eu/ Kybots, knowledge yielding robots German Rigau IXA group, UPV/EHU
More informationA binary search tree or BST is a binary tree that is either empty or in which the data element of each node has a key, and:
Binary Search Trees 1 The general binary tree shown in the previous chapter is not terribly useful in practice. The chief use of binary trees is for providing rapid access to data (indexing, if you will)
More informationNoam Chomsky: Aspects of the Theory of Syntax notes
Noam Chomsky: Aspects of the Theory of Syntax notes Julia Krysztofiak May 16, 2006 1 Methodological preliminaries 1.1 Generative grammars as theories of linguistic competence The study is concerned with
More informationPhase 2 of the D4 Project. Helmut Schmid and Sabine Schulte im Walde
Statistical Verb-Clustering Model soft clustering: Verbs may belong to several clusters trained on verb-argument tuples clusters together verbs with similar subcategorization and selectional restriction
More informationConstituency. The basic units of sentence structure
Constituency The basic units of sentence structure Meaning of a sentence is more than the sum of its words. Meaning of a sentence is more than the sum of its words. a. The puppy hit the rock Meaning of
More informationCOMP 356 Programming Language Structures Notes for Chapter 4 of Concepts of Programming Languages Scanning and Parsing
COMP 356 Programming Language Structures Notes for Chapter 4 of Concepts of Programming Languages Scanning and Parsing The scanner (or lexical analyzer) of a compiler processes the source program, recognizing
More informationBinary Search Trees. A Generic Tree. Binary Trees. Nodes in a binary search tree ( B-S-T) are of the form. P parent. Key. Satellite data L R
Binary Search Trees A Generic Tree Nodes in a binary search tree ( B-S-T) are of the form P parent Key A Satellite data L R B C D E F G H I J The B-S-T has a root node which is the only node whose parent
More informationAnalysis of Algorithms I: Optimal Binary Search Trees
Analysis of Algorithms I: Optimal Binary Search Trees Xi Chen Columbia University Given a set of n keys K = {k 1,..., k n } in sorted order: k 1 < k 2 < < k n we wish to build an optimal binary search
More information5HFDOO &RPSLOHU 6WUXFWXUH
6FDQQLQJ 2XWOLQH 2. Scanning The basics Ad-hoc scanning FSM based techniques A Lexical Analysis tool - Lex (a scanner generator) 5HFDOO &RPSLOHU 6WUXFWXUH 6RXUFH &RGH /H[LFDO $QDO\VLV6FDQQLQJ 6\QWD[ $QDO\VLV3DUVLQJ
More informationPushdown Automata. place the input head on the leftmost input symbol. while symbol read = b and pile contains discs advance head remove disc from pile
Pushdown Automata In the last section we found that restricting the computational power of computing devices produced solvable decision problems for the class of sets accepted by finite automata. But along
More informationAnalysis of Algorithms I: Binary Search Trees
Analysis of Algorithms I: Binary Search Trees Xi Chen Columbia University Hash table: A data structure that maintains a subset of keys from a universe set U = {0, 1,..., p 1} and supports all three dictionary
More information6 Creating the Animation
6 Creating the Animation Now that the animation can be represented, stored, and played back, all that is left to do is understand how it is created. This is where we will use genetic algorithms, and this
More informationArtificial Intelligence Exam DT2001 / DT2006 Ordinarie tentamen
Artificial Intelligence Exam DT2001 / DT2006 Ordinarie tentamen Date: 2010-01-11 Time: 08:15-11:15 Teacher: Mathias Broxvall Phone: 301438 Aids: Calculator and/or a Swedish-English dictionary Points: The
More informationOptimizing Description Logic Subsumption
Topics in Knowledge Representation and Reasoning Optimizing Description Logic Subsumption Maryam Fazel-Zarandi Company Department of Computer Science University of Toronto Outline Introduction Optimization
More informationlogic language, static/dynamic models SAT solvers Verified Software Systems 1 How can we model check of a program or system?
5. LTL, CTL Last part: Alloy logic language, static/dynamic models SAT solvers Today: Temporal Logic (LTL, CTL) Verified Software Systems 1 Overview How can we model check of a program or system? Modeling
More informationStatistical Machine Translation
Statistical Machine Translation Some of the content of this lecture is taken from previous lectures and presentations given by Philipp Koehn and Andy Way. Dr. Jennifer Foster National Centre for Language
More informationUniversity of Ostrava. Reasoning in Description Logic with Semantic Tableau Binary Trees
University of Ostrava Institute for Research and Applications of Fuzzy Modeling Reasoning in Description Logic with Semantic Tableau Binary Trees Alena Lukasová Research report No. 63 2005 Submitted/to
More informationAutomatic Text Analysis Using Drupal
Automatic Text Analysis Using Drupal By Herman Chai Computer Engineering California Polytechnic State University, San Luis Obispo Advised by Dr. Foaad Khosmood June 14, 2013 Abstract Natural language processing
More informationBinary Coded Web Access Pattern Tree in Education Domain
Binary Coded Web Access Pattern Tree in Education Domain C. Gomathi P.G. Department of Computer Science Kongu Arts and Science College Erode-638-107, Tamil Nadu, India E-mail: kc.gomathi@gmail.com M. Moorthi
More informationLecture 5 - CPA security, Pseudorandom functions
Lecture 5 - CPA security, Pseudorandom functions Boaz Barak October 2, 2007 Reading Pages 82 93 and 221 225 of KL (sections 3.5, 3.6.1, 3.6.2 and 6.5). See also Goldreich (Vol I) for proof of PRF construction.
More informationShallow Parsing with Apache UIMA
Shallow Parsing with Apache UIMA Graham Wilcock University of Helsinki Finland graham.wilcock@helsinki.fi Abstract Apache UIMA (Unstructured Information Management Architecture) is a framework for linguistic
More informationA First Investigation of Sturmian Trees
A First Investigation of Sturmian Trees Jean Berstel 2, Luc Boasson 1 Olivier Carton 1, Isabelle Fagnot 2 1 LIAFA, CNRS Université Paris 7 2 IGM, CNRS Université de Marne-la-Vallée Atelier de Combinatoire,
More informationInternational Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 5 ISSN 2229-5518
International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 5 INTELLIGENT MULTIDIMENSIONAL DATABASE INTERFACE Mona Gharib Mohamed Reda Zahraa E. Mohamed Faculty of Science,
More informationThis asserts two sets are equal iff they have the same elements, that is, a set is determined by its elements.
3. Axioms of Set theory Before presenting the axioms of set theory, we first make a few basic comments about the relevant first order logic. We will give a somewhat more detailed discussion later, but
More informationInteractive Dynamic Information Extraction
Interactive Dynamic Information Extraction Kathrin Eichler, Holmer Hemsen, Markus Löckelt, Günter Neumann, and Norbert Reithinger Deutsches Forschungszentrum für Künstliche Intelligenz - DFKI, 66123 Saarbrücken
More informationHow To Understand The Relation Between Simplicity And Probability In Computer Science
Chapter 6 Computation 6.1 Introduction In the last two chapters we saw that both the logical and the cognitive models of scientific discovery include a condition to prefer simple or minimal explanations.
More informationSurface Realisation using Tree Adjoining Grammar. Application to Computer Aided Language Learning
Surface Realisation using Tree Adjoining Grammar. Application to Computer Aided Language Learning Claire Gardent CNRS / LORIA, Nancy, France (Joint work with Eric Kow and Laura Perez-Beltrachini) March
More informationIntroduction. Compiler Design CSE 504. Overview. Programming problems are easier to solve in high-level languages
Introduction Compiler esign CSE 504 1 Overview 2 3 Phases of Translation ast modifled: Mon Jan 28 2013 at 17:19:57 EST Version: 1.5 23:45:54 2013/01/28 Compiled at 11:48 on 2015/01/28 Compiler esign Introduction
More informationFull and Complete Binary Trees
Full and Complete Binary Trees Binary Tree Theorems 1 Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full
More informationThe Modal Logic Programming System MProlog
The Modal Logic Programming System MProlog Linh Anh Nguyen Institute of Informatics, University of Warsaw ul. Banacha 2, 02-097 Warsaw, Poland nguyen@mimuw.edu.pl Abstract. We present the design of our
More informationAlgorithms Chapter 12 Binary Search Trees
Algorithms Chapter 1 Binary Search Trees Outline Assistant Professor: Ching Chi Lin 林 清 池 助 理 教 授 chingchi.lin@gmail.com Department of Computer Science and Engineering National Taiwan Ocean University
More informationModel Checking: An Introduction
Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI
More informationData Structures Fibonacci Heaps, Amortized Analysis
Chapter 4 Data Structures Fibonacci Heaps, Amortized Analysis Algorithm Theory WS 2012/13 Fabian Kuhn Fibonacci Heaps Lacy merge variant of binomial heaps: Do not merge trees as long as possible Structure:
More informationCompilers. Introduction to Compilers. Lecture 1. Spring term. Mick O Donnell: michael.odonnell@uam.es Alfonso Ortega: alfonso.ortega@uam.
Compilers Spring term Mick O Donnell: michael.odonnell@uam.es Alfonso Ortega: alfonso.ortega@uam.es Lecture 1 to Compilers 1 Topic 1: What is a Compiler? 3 What is a Compiler? A compiler is a computer
More informationPrevious Lectures. B-Trees. External storage. Two types of memory. B-trees. Main principles
B-Trees Algorithms and data structures for external memory as opposed to the main memory B-Trees Previous Lectures Height balanced binary search trees: AVL trees, red-black trees. Multiway search trees:
More informationIntegrating NLTK with the Hadoop Map Reduce Framework 433-460 Human Language Technology Project
Integrating NLTK with the Hadoop Map Reduce Framework 433-460 Human Language Technology Project Paul Bone pbone@csse.unimelb.edu.au June 2008 Contents 1 Introduction 1 2 Method 2 2.1 Hadoop and Python.........................
More informationLecture 2: Regular Languages [Fa 14]
Caveat lector: This is the first edition of this lecture note. Please send bug reports and suggestions to jeffe@illinois.edu. But the Lord came down to see the city and the tower the people were building.
More information3515ICT Theory of Computation Turing Machines
Griffith University 3515ICT Theory of Computation Turing Machines (Based loosely on slides by Harald Søndergaard of The University of Melbourne) 9-0 Overview Turing machines: a general model of computation
More informationProgramming Languages
Programming Languages Programming languages bridge the gap between people and machines; for that matter, they also bridge the gap among people who would like to share algorithms in a way that immediately
More informationPhysical Data Organization
Physical Data Organization Database design using logical model of the database - appropriate level for users to focus on - user independence from implementation details Performance - other major factor
More information