Treebank Search with Tree Automata MonaSearch Querying Linguistic Treebanks with Monadic Second Order Logic

Size: px
Start display at page:

Download "Treebank Search with Tree Automata MonaSearch Querying Linguistic Treebanks with Monadic Second Order Logic"

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 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 information

Motivation. Korpus-Abfrage: Werkzeuge und Sprachen. Overview. Languages of Corpus Query. SARA Query Possibilities 1

Motivation. 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 information

Today s Agenda. Automata and Logic. Quiz 4 Temporal Logic. Introduction Buchi Automata Linear Time Logic Summary

Today 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 information

Informatique Fondamentale IMA S8

Informatique 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 information

Algebraic Recognizability of Languages

Algebraic 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 information

Testing LTL Formula Translation into Büchi Automata

Testing 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 information

Parsing Technology and its role in Legacy Modernization. A Metaware White Paper

Parsing 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 information

Compiler Construction

Compiler 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 information

Constraints in Phrase Structure Grammar

Constraints 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 information

Syntax: Phrases. 1. The phrase

Syntax: 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 information

CINTIL-PropBank. CINTIL-PropBank Sub-corpus id Sentences Tokens Domain Sentences for regression atsts 779 5,654 Test

CINTIL-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 information

03 - Lexical Analysis

03 - 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 information

Bounded Treewidth in Knowledge Representation and Reasoning 1

Bounded 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 information

VIQTORYA A Visual Query Tool for Syntactically Annotated Corpora

VIQTORYA 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 information

Fixed-Point Logics and Computation

Fixed-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 information

The Model Checker SPIN

The 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 information

Reading 13 : Finite State Automata and Regular Expressions

Reading 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 information

Symbiosis of Evolutionary Techniques and Statistical Natural Language Processing

Symbiosis 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 information

Formal Verification of Software

Formal 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 information

Dynamic Cognitive Modeling IV

Dynamic 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 information

Temporal Logics. Computation Tree Logic

Temporal 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 information

Outline of today s lecture

Outline 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 information

Test 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 information

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.

Name: 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 information

T-79.186 Reactive Systems: Introduction and Finite State Automata

T-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 information

Software Engineering using Formal Methods

Software 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 information

How To Understand A Sentence In A Syntactic Analysis

How 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 information

The Halting Problem is Undecidable

The 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 information

Lempel-Ziv Coding Adaptive Dictionary Compression Algorithm

Lempel-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 information

Building a Question Classifier for a TREC-Style Question Answering System

Building 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 information

Software Modeling and Verification

Software 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 information

International 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 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 information

Automata and Formal Languages

Automata 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 information

Algorithmic Software Verification

Algorithmic 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 information

Software Verification and Testing. Lecture Notes: Temporal Logics

Software 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 information

DEPENDENCY PARSING JOAKIM NIVRE

DEPENDENCY 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 information

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection

Runtime 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 information

Introduction to Automata Theory. Reading: Chapter 1

Introduction 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 information

LASSY: LARGE SCALE SYNTACTIC ANNOTATION OF WRITTEN DUTCH

LASSY: 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 information

Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Query optimization. DBMS Architecture. Query optimizer. Query optimizer.

Elena 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 information

Regular Languages and Finite State Machines

Regular 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 information

INF5820 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 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 information

Lexical Analysis and Scanning. Honors Compilers Feb 5 th 2001 Robert Dewar

Lexical 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 information

Grammars 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 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 information

Formal Languages and Automata Theory - Regular Expressions and Finite Automata -

Formal 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 information

1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++

1) 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 information

Semantic parsing with Structured SVM Ensemble Classification Models

Semantic 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 information

CS510 Software Engineering

CS510 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 information

Errata: 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: 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 information

Binary Trees and Huffman Encoding Binary Search Trees

Binary 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 information

Monitoring Metric First-order Temporal Properties

Monitoring 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 information

Model Checking II Temporal Logic Model Checking

Model 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 information

Compiler I: Syntax Analysis Human Thought

Compiler 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 information

Special Topics in Computer Science

Special 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 information

Path Querying on Graph Databases

Path 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 information

Automata Theory. Şubat 2006 Tuğrul Yılmaz Ankara Üniversitesi

Automata 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 information

CHAPTER 7 GENERAL PROOF SYSTEMS

CHAPTER 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 information

Fundamentals of Software Engineering

Fundamentals 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 information

The following themes form the major topics of this chapter: The terms and concepts related to trees (Section 5.2).

The 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 information

Binary Heap Algorithms

Binary 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 information

Kybots, knowledge yielding robots German Rigau IXA group, UPV/EHU http://ixa.si.ehu.es

Kybots, 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 information

A 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:

A 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 information

Noam Chomsky: Aspects of the Theory of Syntax notes

Noam 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 information

Phase 2 of the D4 Project. Helmut Schmid and Sabine Schulte im Walde

Phase 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 information

Constituency. The basic units of sentence structure

Constituency. 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 information

COMP 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 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 information

Binary 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. 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 information

Analysis of Algorithms I: Optimal Binary Search Trees

Analysis 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 information

5HFDOO &RPSLOHU 6WUXFWXUH

5HFDOO &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 information

Pushdown 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. 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 information

Analysis of Algorithms I: Binary Search Trees

Analysis 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 information

6 Creating the Animation

6 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 information

Artificial Intelligence Exam DT2001 / DT2006 Ordinarie tentamen

Artificial 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 information

Optimizing Description Logic Subsumption

Optimizing 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 information

logic language, static/dynamic models SAT solvers Verified Software Systems 1 How can we model check of a program or system?

logic 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 information

Statistical Machine Translation

Statistical 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 information

University of Ostrava. Reasoning in Description Logic with Semantic Tableau Binary Trees

University 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 information

Automatic Text Analysis Using Drupal

Automatic 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 information

Binary Coded Web Access Pattern Tree in Education Domain

Binary 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 information

Lecture 5 - CPA security, Pseudorandom functions

Lecture 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 information

Shallow Parsing with Apache UIMA

Shallow 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 information

A First Investigation of Sturmian Trees

A 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 information

International 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 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 information

This asserts two sets are equal iff they have the same elements, that is, a set is determined by its elements.

This 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 information

Interactive Dynamic Information Extraction

Interactive 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 information

How To Understand The Relation Between Simplicity And Probability In Computer Science

How 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 information

Surface Realisation using Tree Adjoining Grammar. Application to Computer Aided Language Learning

Surface 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 information

Introduction. Compiler Design CSE 504. Overview. Programming problems are easier to solve in high-level languages

Introduction. 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 information

Full and Complete Binary Trees

Full 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 information

The Modal Logic Programming System MProlog

The 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 information

Algorithms Chapter 12 Binary Search Trees

Algorithms 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 information

Model Checking: An Introduction

Model 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 information

Data Structures Fibonacci Heaps, Amortized Analysis

Data 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 information

Compilers. Introduction to Compilers. Lecture 1. Spring term. Mick O Donnell: michael.odonnell@uam.es Alfonso Ortega: alfonso.ortega@uam.

Compilers. 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 information

Previous Lectures. B-Trees. External storage. Two types of memory. B-trees. Main principles

Previous 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 information

Integrating 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 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 information

Lecture 2: Regular Languages [Fa 14]

Lecture 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 information

3515ICT Theory of Computation Turing Machines

3515ICT 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 information

Programming Languages

Programming 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 information

Physical Data Organization

Physical 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