Scientific Theory in Informatics A1N
|
|
- Beatrix Dawson
- 5 years ago
- Views:
Transcription
1 Scientific Theory in Informatics A1N Lecture 05 Automata Theory and Computability Theory Prof. David Vernon School of Informatics University of Skövde Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 1 Lecture Overview Automata Theory and Languages Regular Languages» Finite Automata» Nondeterminism» Regular Expressions» Nonregular Languages Context-free Languages» Context-free Grammars» Pushdown Automata» Deterministic Context-Free Languages Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 2
2 Lecture Overview Computability Theory The Church-Turing Thesis» Turing Machines» Variants of Turing Machines» The Definition of Algorithm Decidability» Decidable Languages» Undecidability Reducibility Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 3 Motivation Theory of Computation is normally divided in three parts 1. Automata Theory and Languages 2. Computability Theory 3. Complexity Theory See: Introduction to the Theory of Computation, Michael Sipser, 3 rd edition, Cengage Learning, 2013 Chapters 1, 2 (Automata Theory) Chapters 3, 4, 5 (Computability Theory) Chapter 7, 9 (Complexity Theory) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 4
3 Motivation Why study the Theory of Computation? Determine what can and cannot be computed How quickly & with how much memory On what type of computational model Theory guides practice New application-specific programming language grammars String searching and pattern matching finite automata and regular expressions Programs take too long to run complexity analysis and algorithmic strategies Security and cryptography NP-completeness Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 5 Motivation Complexity Theory Easy problems (sort a million items in a few seconds) Hard problems (schedule a thousand classes in a hundred years) What makes some problems hard and others easy (computationally)? Complexity Theory addresses this question Surprise: we don t know the answer! Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 6
4 Motivation Computability Theory In the first half of the 20 th century, mathematicians such as Kurt Gödel, Alan Turing, and Alonzo Church discovered that certain basic problems cannot be solved by computers» e.g. determine whether a mathematical statement is true or false Complexity Theory: classify problems as easy ones and hard ones Computability Theory: classify problems are solvable and not solvable Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 7 Motivation Automata Theory Deals with the definitions and properties of mathematical models of computation Finite automaton (used in text processing, compilers, hardware design) Context-free grammar (used in programming languages and artificial intelligence) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 8
5 Automata Theory and Languages Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 9 Regular Languages Finite Automata Idealized (mathematical) model of a computer Simplest model:» Finite state machine» Finite automaton Extremely limited amount of memory Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 10
6 Regular Languages Finite Automata Example: controller for an automatic door» Front pad to detect presence of a person about to walk though» Rear pad to make sure it stays open long enough (and avoid hitting someone) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 11 Regular Languages Finite Automata Example: controller for an automatic door» Controller states: OPEN, CLOSED» Input conditions: FRONT, REAR, BOTH, NEITHER Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 12
7 Regular Languages Finite Automata Example: controller for an automatic door» Controller states: OPEN, CLOSED» Input conditions: FRONT, REAR, BOTH, NEITHER Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 13 Regular Languages Finite Automata Example: controller for an automatic door» Controller states: OPEN, CLOSED» Input conditions: FRONT, REAR, BOTH, NEITHER Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 14
8 Regular Languages Finite Automata Example: controller for an automatic door» Just one bit of memory (state: OPEN or CLOSED) Other examples» Elevator / lift controller (more states: one for each floor; inputs: lift buttons)» Dishwashers» Digital Thermostats» Washing machines Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 15 Regular Languages Finite Automata Finite automaton M 1 with three states State diagram Accept state q 2 Transitions: arrows Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 16
9 Regular Languages Finite Automata Automaton receives an input string, e.g Output is either accept or reject» accept if in accept state at the end of the input string» reject otherwise Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 17 Regular Languages Finite Automata Automaton receives an input string, e.g Start in state q 1 2. Read 1, follow transition from q 1 to q 2 3. Read 1, follow transition from q 2 to q 2 4. Read 0, follow transition from q 2 to q 3 5. Read 1, follow transition from q 3 to q 2 6. Accept because M 1 is in an accept state q 2 at the end of the input Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 18
10 Regular Languages Finite Automata Automaton receives an input string, e.g M 1 accepts any string that ends in a 1, as it goes to its accept state whenever it reads the symbol 1 It accepts any string that ends in an even numbers of 0s following the last 1 It rejects all other strings Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 19 Regular Languages Finite Automata Formal definition of a finite automaton 1. The transition function specifies exactly one next state for each possible combination of a state and an input symbol Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 20
11 Regular Languages Finite Automata δ: Q Σ Q Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 21 Regular Languages Finite Automata If A is the set of all strings that a machine M accepts, we say that A is the language of machine M L(M) = A We say M recognizes A or M accepts A A machine may accept several strings but it always recognizes only one language L(M 1 ) = A A = {w w contains at least one 1 and an even number of 0s follow the last 1} Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 22
12 Regular Languages Finite Automata Finite automaton M 2 L(M 2 ) = A A = {w w ends in a 1} Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 23 Regular Languages Finite Automata Finite automaton M 3 L(M 3 ) = A A = {w w is the empty string ε or ends in a 0} Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 24
13 Regular Languages Finite Automata Finite automaton M 4 Two accept states q 1 and r 1 Operates over the alphabet Σ = {a, b} Accepts all strings that start and end with the same symbol Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 25 Regular Languages Finite Automata Formal definition of computation Let M = (Q, Σ, δ, q 0, F) be a finite automaton Let w = w 1 w 2 w n be a string where each w i is a member of the alphabet Σ M accepts w if a sequence of states r 0, r 1,, r n in Q exists with three conditions r 0 = q 0 machine starts in the start state δ (r i, w i+1 ) = r i+1, for i = 0,, n-1 goes from state to state r n F accepts input if end up in accept state Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 26
14 Regular Languages Finite Automata We say M recognizes language A if A = {w M accepts w} A language is called a regular language if some finite automaton recognizes it Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 27 Regular Languages Finite Automata Given a language, design a finite automaton to recognize it» Receive an input string, one symbol at a time» After each symbol, decide whether the string seen so far is in the language» Figure out what you need to remember about the string as you are reading it» Can t remember everything (even the whole string: FINITE automaton, FINITE number of states, FINITE memory)» Remember only crucial information (depends of the language) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 28
15 Regular Languages Finite Automata Given a language, design a finite automaton to recognize it Example: the language of strings with an odd number of 1s Alphabet Σ = {0, 1} Language L(M) = A, A = {w w contains an odd number of 1s} What do we need to remember? Entire string? no Number of 1s? no Whether number of 1s so far is even or odd? yes Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 29 Regular Languages Finite Automata Given a language, design a finite automaton to recognize it Example: the language of strings with an odd number of 1s State q o even so far State q 1 odd so far Finish this: Which is the accept state? What is the transition function δ? Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 30
16 Regular Languages Finite Automata Given a language, design a finite automaton to recognize it Example: the language of all strings that contain 001 as a substring. Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 31 Regular Languages Finite Automata The regular operations Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 32
17 Regular Languages Finite Automata The regular operations Union: Take all the strings in A and B and put them in one language Concatenation: Attach a string from A in front of a string from B in all possible ways to produce the strings in the new language Star: unary operator attach any number of strings in A together to get a string in the new language Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 33 Regular Languages Finite Automata The regular operations Let alphabet Σ = {a, b,, z} Let language A = {good, bad} and B = {boy, girl} A B = {good, bad, boy, girl} A B = {goodboy, goodgirl, badboy, badgirl} A * = {ε, good, bad, goodgood, goodbad, badgood, badbad, goodgoodgood, goodgoodbad, goodbadgood, goodbadbad, } The collection of regular languages is closed under all three of the regular operations Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 34
18 Regular Languages Nondeterminism Deterministic computation:» When a machine is in a give state and reads the next input symbol, we know what the next state will be Nondeterministic computation:» Several choices may exist for the next state DFA: deterministic finite automata NFA: nondeterministic finite automata Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 35 Regular Languages Nondeterminism DFA: deterministic finite automata» Exactly one exiting transition arrow for each symbol in the alphabet NFA: nondeterministic finite automata» Zero, one, or many exiting arrows for each alphabet symbol» Transition may also be labelled ε zero, one, or many arrows may exit from a state with the label ε Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 36
19 Regular Languages Nondeterminism How does an NFA compute?» If you read a symbol for which there is more than one transition (arrow)» The machine splits into multiple copies of itself and follows all of the possibilities in parallel» If there a subsequent choices, the machine splits again» If the next input symbol doesn t appear on any of the arrows exiting the state occupied by a copy of the machine, that copy dies» If ANY one of these copies of the machine is in an accept state at the end of the input, the NFA accepts the input string. Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 37 Regular Languages Nondeterminism How does an NFA compute?» If a state with an ε is encountered, without reading any input, the machine splits into multiple copies, one following the ε labelled arrows, and one staying at the current state Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 38
20 Regular Languages Nondeterminism How does an NFA compute?» Nondeterminism is a kind of parallel computation, with multiple independent processes/threads running concurrently» If at least one of the processes/ threads accepts, the entire computation accepts Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 39 Regular Languages Nondeterminism Computation for input Hint: where does q 3 come from? Split in q 2 because of ε labelled arrow Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 40
21 Regular Languages Nondeterminism Every NFA can be converted into an equivalent DFA Constructing NFAs is sometimes easier than constructing DFAs For example, DFA and NFA to recognize language A consisting of all strings over {0,1} containing a 1 in the third position from the end Accept ; reject 0011 Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 41 Regular Languages Nondeterminism Formal definition of an NFA Power set: set of all subsets of Q Σ ε = Σ {ε} Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 42
22 Regular Languages Nondeterminism δ: Q Σ ε P(Q) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 43 Regular Languages Regular Expressions In arithmetic, we can use operations to build expressions (5 + 3) x 4 Here we use regular operations to build regular expressions (0 1)0* [(0 1) 0* ] The value of a regular expression is a language (the set of all strings generated by that expression) In this example, the language consisting of all strings starting with a 0 or 1, followed by any number of 0s Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 44
23 Regular Languages Regular Expressions Another regular expression (0 1)*» The value of this expression is the language consisting of all possible strings of 0s and1s If Σ = {0, 1} we can write Σ as shorthand for the regular expression (0 1) More generally, if Σ is any alphabet,» The regular expression Σ describes the language consisting of all strings of length 1 over this alphabet» The regular expression Σ* describes the language consisting of all strings over that alphabet Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 45 Regular Languages Regular Expressions Important in computer science applications Searching for text patters that satisfy certain patterns Describe the patterns using regular expressions Tools such as awk and grep in UNIX, languages such as Perl, and most text editors all provide mechanisms for description of patterns by using regular expressions Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 46
24 Regular Languages Regular Expressions We distinguish between a regular expression R and the language L it describes: L (R) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 47 Regular Languages Regular Expressions Regular expressions and finite automata are equivalent in their descriptive power Any regular expression can be converted into a finite automaton that recognizes the language it describes (and vice versa) Recall: a regular language is one that is recognized by some finite automaton A language is regular if and only if some regular expression describes it Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 48
25 Regular Languages Regular Expressions Some languages cannot be recognized with a finite automaton (DFA or NFA) B = {0 n 1 n n 0} (We can t remember the number of 0s using a machine with finite memory, i.e. a finite number of states) There are nonregular languages Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 49 Regular Languages Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 50
26 Context-free Languages Context-free Grammars Can describe situations which have a recursive structure Important application: programming languages» Specification» Compilation (Interpretation, Recognition) Parser: extracts (recognizes) the meaning of a program prior to generating the compiled code or performing the interpretation Given a grammar, it s straightforward to create a parser» Can even do it automatically with a software tool Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 51 Context-free Languages Context-free Grammars Any language that can be generated with a context-free grammars is called a context-free language (CFL)» They include all regular languages Push-down automata» Class of machines that recognize context-free languages Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 52
27 Context-free Languages Context-free Grammars Example: G 1 Substitution rules / productions Start variable A 0A1 A B B # Variable (upper case) Terminal (lower case) Sequence of substitutions is called a derivation A 0A1 00A11 000A B #111 Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 53 Context-free Languages Context-free Grammars Example: G 1 Parse tree for 000#111 in grammar G 1 Language of the grammar: L(G) 1 = {0 n #1 n n 0} Abbreviate multiple rules with the same left-hand variable A 0A1 B Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 54 or
28 Context-free Languages Context-free Grammars Formal definition Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 55 Context-free Languages Context-free Grammars If u, v, and w are strings of variables and terminals and A w is a production (i.e. rule of the grammar) we say uav yields uwv We say u derives v (written u * v) if u = v or if a sequence u 1, u 2,, u k exists for k 0 and u 1 u 2 u k v The language of the grammar is {w Σ* S * w} Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 56
29 Context-free Languages Context-free Grammars Example: Grammar G = (V, Σ, R, <EXPR>) V = {<EXPR>, <TERM>, <FACTOR>} Σ = {a, +,, (, ) } R: <EXPR> <EXPR> + <TERM> <TERM> <TERM> <TERM> <FACTOR> <FACTOR> <FACTOR> ( <EXPR> ) a This grammar can generate the strings a+a a and (a+a) a Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 57 Context-free Languages Context-free Grammars Example: Grammar G = (V, Σ, R, <EXPR>) Parse trees for a+a a and (a+a) a Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 58
30 Context-free Languages Push-down Automata (PDA) Another type of computational model Like nondeterministic finite automata but they have additional memory stack The stack allows push-down automata to recognize some non-regular languages Push-down automata is equivalent in power to context-free grammars Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 59 Context-free Languages Push-down Automata (PDA) Finite automaton Push-down automaton Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 60
31 Context-free Languages Push-down Automata (PDA) Stack operations» Push (down) a symbol onto the stack» Pop a symbol off the stack» Symbol popped is always the most recently pushed» Last in, first out (LIFO)» Has an unlimited amount of storage Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 61 Context-free Languages Push-down Automata (PDA) Recall that a finite automaton cannot recognize L(G) = {0n 1 n n 0} because it cannot store large numbers of elements in a finite memory But a PDA can do this: Read symbols from input Every time a 0 is read, push it on the stack Every time a 1 is read, pop a element off the stack If reading is finished and stack is empty, accept the input (expression) Otherwise, reject the input (expression): stack is empty while 1s remain; 1s are finished and stack is empty; 0s appear following 1s Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 62
32 Context-free Languages Push-down Automata (PDA) PDA can be deterministic or nondeterministic Noneterministic PDA are more powerful than deterministic PDA (different situation to DFA and NFA) Nondeterministic PDA can recognize languages that deterministic PDAs cannot Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 63 Context-free Languages Push-down Automata (PDA) Nondeterministic. Power set: set of all subsets of Q Γ ε Σ ε = Σ {ε} Transition function: current state, next input symbol read, top symbol on stack determine the next move of PDA (i.e. some combination of new state and stack operation) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 64
33 Context-free Languages Push-down Automata (PDA) L(M 1 ) = {0n 1 n n 0} Let M 1 be (Q, Σ, Γ, δ, q 1, F} Q = {q 1, q 2, q 3, q 4 } Σ = {0, 1} Γ = {0, $} F = (q 1, q 4 } δ is given by: Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 65 Context-free Languages Push-down Automata (PDA) a, b c When reading a from input, replace b on stack with c If a is ε, make the transition without reading any input If b is ε, make the transition without popping from the stack If c is ε, don t push any symbol on the stack Read 0, pop nothing, push 0 Read nothing, pop nothing, push $ Read 1, pop 0, push nothing Read1, pop 0, push nothing Read nothing, pop $, push nothing Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 66
34 Context-free Languages Push-down Automata (PDA) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 67 Context-free Languages Deterministic Context-Free Languages Deterministic push-down automata (DPDA) recognize deterministic context-free languages In contrast to DFA, we allow ε-moves in DPDA transition function» ε-input moves δ(q, ε, x)» ε-stack moves δ(q, a, ε) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 68
35 Context-free Languages Deterministic Context-Free Languages is not Ø Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 69 Context-free Languages Deterministic Context-Free Languages Major practical importance: DPDAs encompass a rich class of CFLs that include most programming languages DCFGs are sometimes inconvenient for expressing particular DCFL Alternative is to use a broader class of grammars LR(k) grammars Close enough to DCFGs to allow direct conversion to DPDAs Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 70
36 Automata and Computability Theory Computability Theory Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 71 The Church-Turing Thesis The story so far Finite automata: good models for devices with a small amount of memory Pushdown automata: good models for memory organized as a stack (last in, first out) Both are too restricted to serve as models of general purpose computers Enter Turing machines Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 72
37 The Church-Turing Thesis Turing machines Proposed by Alan Turing in 1936 Similar to finite automaton but has unlimited and unrestricted memory Can do anything a general purpose computer can do But cannot solve some problems (and, so, neither can computers) o Beyond the limits of theoretical computation Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 73 The Church-Turing Thesis Turing machines Infinite tape: unlimited memory Tape head (read and write symbols to the tape, move left and right) Tape only contains input string initially; blank everywhere else Computes until it decides to produce an output Output accept if it enters Accepting state; Output reject if it enters Rejecting state If it doesn t enter accepting or rejecting state, it loops forever, never halting Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 74
38 The Church-Turing Thesis Turing machines Turing machine M 1 for testing membership in the language B = {w#w w {0, 1}* } i.e. two identical strings separated by a # M 1 should accept if its input is a member of B, and reject otherwise M 1 = On input string w: o Move the tape head back and forth across the tape to corresponding squares on either side of the # to check if they contain the same symbol. o If they don t match or if there is no #, reject o Write an x every time a square is checked o When all symbols to the left of the # have been crossed off (with an x), check for any remaining symbols to the right of the # o If any symbols remain, reject; otherwise accept Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 75 The Church-Turing Thesis Turing machines Turing machine M 1 for testing membership in the language B = {w#w w {0, 1}* } two identical strings separated by a # Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 76
39 The Church-Turing Thesis Turing machines Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 77 The Church-Turing Thesis Turing machines Transition function δ: Q Γ Q Γ {L, R} When the Turing machine is in a certain state q The head is over the tape square containing the symbol a If δ(q, a) = (r, b, L) the machine writes the symbol b replacing the a goes to state r then head moves Left or Right one square, depending on L or R (after writing b) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 78
40 The Church-Turing Thesis Turing machines A Turing machine M = (Q, Σ, Γ, δ, q o, q accept, q reject ) computes as follows:» Initially M receives its input w = w 1 w 2 w n Σ* On the leftmost n squares on the tape The rest of the tape is filled with blank symbols The first blank marks the end of the input (why?)» The head starts at the leftmost square of the tape» Compute by following the rules specified by the transition function» If M tries to move its head to the left off the left-hand end of the tape, the head stays in the same place for that move» The computation continues until it enters either the accept or reject states, at which point it halts» Otherwise, M goes on forever (loops) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 79 The Church-Turing Thesis Turing machines Turing machine configuration: current state, current contents of memory (tape), current head location we write u q v to mean the tape contents comprises the two strings u and v and the current head location is the first symbol of v 1011q Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 80
41 The Church-Turing Thesis Turing machines A Turing machine M = (Q, Σ, Γ, δ, q o, q accept, q reject ) computes as follows:» Configuration C 1 yields configuration C 2 if the Turing machine can legally go from C 1 to C 2 in a single step» Suppose we have a, b, and c in Γ u and v in Γ* states q i and q j If in the transition function δ(q i, b) = (q j, c, L) LEFT We say that ua q i bv yields u q j acv Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 81 The Church-Turing Thesis Turing machines A Turing machine M = (Q, Σ, Γ, δ, q o, q accept, q reject ) computes as follows:» Configuration C 1 yields configuration C 2 if the Turing machine can legally go from C 1 to C 2 in a single step» Suppose we have a, b, and c in Γ u and v in Γ* states q i and q j If in the transition function δ(q i, b) = (q j, c, R) RIGHT We say that ua q i bv yields uac q j v Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 82
42 The Church-Turing Thesis Turing machines A Turing machine M = (Q, Σ, Γ, δ, q o, q accept, q reject ) computes as follows:» Start configuration of M on input w: q 0 w» Accepting configuration: q accept» Rejecting configuration: q reject Halting configuration» A Turing machine M accepts input w if a sequence of configurations C 1, C 2, C k exists, where C 1 is the start configuration of M on input w each C i yields C i+1 C k is an accepting configuration Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 83 The Church-Turing Thesis Turing machines The collection of strings that M accepts is the language of M or the language recognized by M A language is called Turing-recognizable if some Turing machine recognizes it (also called a recursively enumerable language) A Turing machine that halts on all inputs, i.e. a machine that never loops, is called a decider (because it always makes a decision to accept or reject) A language is called Turing-decidable or simply decidable if some Turing machine decides it (also called a recursive language) Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 84
43 The Church-Turing Thesis Turing machines A language is recognizable iff there is a Turing Machine which will halt and accept only the strings in that language; for strings not in the language, the TM either rejects, or does not halt at all. A language is decidable iff there is a Turing Machine which will accept strings in the language and reject strings not in the language. A recognizer of a language is a machine that recognizes that language A decider of a language is a machine that decides that language» Both halt in the accept state on strings that are in the language» A decider also halts (rejects) if the string is not in the language» A recognizer MAY or MAY NOT halt on strings that are not in the language Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 85 The Church-Turing Thesis Turing machines Turing machine M 1 = (Q, Σ, Γ, δ, q o, q accept, q reject ) for testing membership in the language B = {w#w w {0, 1}* } Q = {q 1 q 8, q accept, q reject } Σ = {0, 1, #} Γ = {0, 1, #, x, } The start, accept, and reject states are q 1, q accept, q reject δ is given by the state diagram Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 86
44 The Church-Turing Thesis Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 87 The Church-Turing Thesis Variants of Turing machines Alternative definitions nondeterminism & multi-tape machines but all have the same power (i.e. recognize the same class of languages)» Every multitape Turing machine has an equivalent single-tape Turing machine» Every nondeterministic Turing machine has an equivalent deterministic Turing machine Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 88
45 The Church-Turing Thesis The Definition of Algorithm Intuitive notion: collection of simple instructions for carrying out some task Not formally defined until 1936: Alonzo Church and Alan Turing» Church used the λ-calculus (Lambda calculus) to define algorithms» Turing used his machines» The two definitions are equivalent» Church-Turing thesis: the intuitive notion = Turing machine algorithms Turing machine serves as a precise model for the definition of an algorithm Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 89 The Church-Turing Thesis The Definition of Algorithm The input to a Turing machine is always a string If we want to process other type of objects, represent them as a string» The string representation of an object O is written O» The string representation of several objects O 1, O 2, O k is written O 1, O 2, O k Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 90
46 Decidability Decidable Languages We represent computational problems by languages For example, acceptance problem for DFAs» Test whether a particular DFA accepts a given string can be expressed as a language A DFA» A DFA contains the encodings of all DFAs together with the strings the DFA accepts A DFA = { B, w B is a DFA that accepts string w}» The problem of testing whether a DFA B accepts an input w is the same as testing whether B, w is a member of the language A DFA Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 91 Decidability Decidable Languages We formulate problems in terms of testing membership in a language Showing that a language is decidable is the same as showing that the computational problem is decidable A DFA is a decidable language A NFA is a decidable language A CFG is a decidable language Every context-free language is decidable Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 92
47 Decidability Undecidability Some problems are algorithmically unsolvable Turing machines (& thus all computers) are limited in a fundamental way What types of problems? ordinary problems e.g. Given a computer program and a precise specification of what that program should do, verify that it performs as specified (i.e. that it is correct) This general problem of software verification is not solvable by computer Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 93 Decidability Undecidability A TM = { M, w M is a Turing machine and M accepts w} A TM is undecidable i.e. can t determine whether or not a TM accepts a given input Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 94
48 Decidability Undecidability Note A TM is is Turing-recognizable The Turing machine U recognizes A TM U = On input B, w, where M is a TM and w is a string: 1. Simulate M on input w 2. If M ever enters its accept state, accept; If M ever enters its reject state, reject U: universal Turing machine Capable of simulating any other Turing machine based on a description of that machine This machine loops on B, w if M loops on w i.e. it does not decide A TM If the algorithm had some way to determine that M was not halting on w, it could reject. But there is no way to make this determination. Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 95 Decidability Undecidability: The Halting Problem HALT TM = { M, w M is a Turing machine and M halts on input w} HALT TM is undecidable i.e. can t determine whether or not a TM halts (by accepting or rejecting) a given input Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 96
49 Reducibility Reduction A reduction is a way of converting one problem to another problem so that the second problem can be used to solve the first problem If problem A reduces to problem B, we can use a solution of B to solve A» You can reduce the problem of finding your way around a city to the problem of obtaining a map of the city» You can reduce the problem of travelling from Skövde to Stockholm to the problem of buying a train ticket between the two cities. That problem in turn reduces to earning the money for the ticket. That problem reduces to the problem of finding a job Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 97 Reducibility Reduction If problem A reduces to problem B, we can use a solution of B to solve A» The problem of measuring the area of a rectangle reduces to the problem of measuring the length and width» The problem of solving a set of linear equations reduces to the problem of inverting a matrix Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 98
50 Reducibility Reduction When A is reducible to B, solving A cannot be harder than solving B, because a solution to B gives a solution to A In computability theory» If A is reducible to B, and B is decidable, A is also decidable» If A is undecidable, and A reduces to B, B is undecidable In complexity theory» all NP problems reduce to NP-complete problems» If an NP-complete problem is in P, all NP problems are» If an NP-complete problem is intractable, all NP problems are Scientific Theory in Informatics Lecture 05: Automata Theory and Computability Theory Slide 99
A R "! I,,, !~ii ii! A ow ' r.-ii ' i ' JA' V5, 9. MiN, ;
A R "! I,,, r.-ii ' i '!~ii ii! A ow ' I % i o,... V. 4..... JA' i,.. Al V5, 9 MiN, ; Logic and Language Models for Computer Science Logic and Language Models for Computer Science HENRY HAMBURGER George
More informationInformatics 2A: Language Complexity and the. Inf2A: Chomsky Hierarchy
Informatics 2A: Language Complexity and the Chomsky Hierarchy September 28, 2010 Starter 1 Is there a finite state machine that recognises all those strings s from the alphabet {a, b} where the difference
More informationLanguage properties and Grammar of Parallel and Series Parallel Languages
arxiv:1711.01799v1 [cs.fl] 6 Nov 2017 Language properties and Grammar of Parallel and Series Parallel Languages Mohana.N 1, Kalyani Desikan 2 and V.Rajkumar Dare 3 1 Division of Mathematics, School of
More informationSyntax Parsing 1. Grammars and parsing 2. Top-down and bottom-up parsing 3. Chart parsers 4. Bottom-up chart parsing 5. The Earley Algorithm
Syntax Parsing 1. Grammars and parsing 2. Top-down and bottom-up parsing 3. Chart parsers 4. Bottom-up chart parsing 5. The Earley Algorithm syntax: from the Greek syntaxis, meaning setting out together
More informationErkki Mäkinen State change languages as homomorphic images of Szilard languages
Erkki Mäkinen State change languages as homomorphic images of Szilard languages UNIVERSITY OF TAMPERE SCHOOL OF INFORMATION SCIENCES REPORTS IN INFORMATION SCIENCES 48 TAMPERE 2016 UNIVERSITY OF TAMPERE
More informationProof Theory for Syntacticians
Department of Linguistics Ohio State University Syntax 2 (Linguistics 602.02) January 5, 2012 Logics for Linguistics Many different kinds of logic are directly applicable to formalizing theories in syntax
More informationGrammars & Parsing, Part 1:
Grammars & Parsing, Part 1: Rules, representations, and transformations- oh my! Sentence VP The teacher Verb gave the lecture 2015-02-12 CS 562/662: Natural Language Processing Game plan for today: Review
More informationA General Class of Noncontext Free Grammars Generating Context Free Languages
INFORMATION AND CONTROL 43, 187-194 (1979) A General Class of Noncontext Free Grammars Generating Context Free Languages SARWAN K. AGGARWAL Boeing Wichita Company, Wichita, Kansas 67210 AND JAMES A. HEINEN
More informationRANKING AND UNRANKING LEFT SZILARD LANGUAGES. Erkki Mäkinen DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF TAMPERE REPORT A ER E P S I M S
N S ER E P S I M TA S UN A I S I T VER RANKING AND UNRANKING LEFT SZILARD LANGUAGES Erkki Mäkinen DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF TAMPERE REPORT A-1997-2 UNIVERSITY OF TAMPERE DEPARTMENT OF
More informationEnumeration of Context-Free Languages and Related Structures
Enumeration of Context-Free Languages and Related Structures Michael Domaratzki Jodrey School of Computer Science, Acadia University Wolfville, NS B4P 2R6 Canada Alexander Okhotin Department of Mathematics,
More informationLecture 10: Reinforcement Learning
Lecture 1: Reinforcement Learning Cognitive Systems II - Machine Learning SS 25 Part III: Learning Programs and Strategies Q Learning, Dynamic Programming Lecture 1: Reinforcement Learning p. Motivation
More informationOPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS
OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS Václav Kocian, Eva Volná, Michal Janošek, Martin Kotyrba University of Ostrava Department of Informatics and Computers Dvořákova 7,
More informationThe Strong Minimalist Thesis and Bounded Optimality
The Strong Minimalist Thesis and Bounded Optimality DRAFT-IN-PROGRESS; SEND COMMENTS TO RICKL@UMICH.EDU Richard L. Lewis Department of Psychology University of Michigan 27 March 2010 1 Purpose of this
More informationA Version Space Approach to Learning Context-free Grammars
Machine Learning 2: 39~74, 1987 1987 Kluwer Academic Publishers, Boston - Manufactured in The Netherlands A Version Space Approach to Learning Context-free Grammars KURT VANLEHN (VANLEHN@A.PSY.CMU.EDU)
More informationCS 598 Natural Language Processing
CS 598 Natural Language Processing Natural language is everywhere Natural language is everywhere Natural language is everywhere Natural language is everywhere!"#$%&'&()*+,-./012 34*5665756638/9:;< =>?@ABCDEFGHIJ5KL@
More informationCOMPUTATIONAL COMPLEXITY OF LEFT-ASSOCIATIVE GRAMMAR
COMPUTATIONAL COMPLEXITY OF LEFT-ASSOCIATIVE GRAMMAR ROLAND HAUSSER Institut für Deutsche Philologie Ludwig-Maximilians Universität München München, West Germany 1. CHOICE OF A PRIMITIVE OPERATION The
More informationIT Students Workshop within Strategic Partnership of Leibniz University and Peter the Great St. Petersburg Polytechnic University
IT Students Workshop within Strategic Partnership of Leibniz University and Peter the Great St. Petersburg Polytechnic University 06.11.16 13.11.16 Hannover Our group from Peter the Great St. Petersburg
More informationDigital Fabrication and Aunt Sarah: Enabling Quadratic Explorations via Technology. Michael L. Connell University of Houston - Downtown
Digital Fabrication and Aunt Sarah: Enabling Quadratic Explorations via Technology Michael L. Connell University of Houston - Downtown Sergei Abramovich State University of New York at Potsdam Introduction
More informationSchool of Innovative Technologies and Engineering
School of Innovative Technologies and Engineering Department of Applied Mathematical Sciences Proficiency Course in MATLAB COURSE DOCUMENT VERSION 1.0 PCMv1.0 July 2012 University of Technology, Mauritius
More informationParsing of part-of-speech tagged Assamese Texts
IJCSI International Journal of Computer Science Issues, Vol. 6, No. 1, 2009 ISSN (Online): 1694-0784 ISSN (Print): 1694-0814 28 Parsing of part-of-speech tagged Assamese Texts Mirzanur Rahman 1, Sufal
More informationBackwards Numbers: A Study of Place Value. Catherine Perez
Backwards Numbers: A Study of Place Value Catherine Perez Introduction I was reaching for my daily math sheet that my school has elected to use and in big bold letters in a box it said: TO ADD NUMBERS
More informationNotes on The Sciences of the Artificial Adapted from a shorter document written for course (Deciding What to Design) 1
Notes on The Sciences of the Artificial Adapted from a shorter document written for course 17-652 (Deciding What to Design) 1 Ali Almossawi December 29, 2005 1 Introduction The Sciences of the Artificial
More informationReinforcement Learning by Comparing Immediate Reward
Reinforcement Learning by Comparing Immediate Reward Punit Pandey DeepshikhaPandey Dr. Shishir Kumar Abstract This paper introduces an approach to Reinforcement Learning Algorithm by comparing their immediate
More informationUniversity of Groningen. Systemen, planning, netwerken Bosman, Aart
University of Groningen Systemen, planning, netwerken Bosman, Aart IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's PDF) if you wish to cite from it. Please check the document
More informationOn the Polynomial Degree of Minterm-Cyclic Functions
On the Polynomial Degree of Minterm-Cyclic Functions Edward L. Talmage Advisor: Amit Chakrabarti May 31, 2012 ABSTRACT When evaluating Boolean functions, each bit of input that must be checked is costly,
More informationGACE Computer Science Assessment Test at a Glance
GACE Computer Science Assessment Test at a Glance Updated May 2017 See the GACE Computer Science Assessment Study Companion for practice questions and preparation resources. Assessment Name Computer Science
More informationGetting Started with Deliberate Practice
Getting Started with Deliberate Practice Most of the implementation guides so far in Learning on Steroids have focused on conceptual skills. Things like being able to form mental images, remembering facts
More informationUsing Proportions to Solve Percentage Problems I
RP7-1 Using Proportions to Solve Percentage Problems I Pages 46 48 Standards: 7.RP.A. Goals: Students will write equivalent statements for proportions by keeping track of the part and the whole, and by
More informationWe are strong in research and particularly noted in software engineering, information security and privacy, and humane gaming.
Computer Science 1 COMPUTER SCIENCE Office: Department of Computer Science, ECS, Suite 379 Mail Code: 2155 E Wesley Avenue, Denver, CO 80208 Phone: 303-871-2458 Email: info@cs.du.edu Web Site: Computer
More informationUsing dialogue context to improve parsing performance in dialogue systems
Using dialogue context to improve parsing performance in dialogue systems Ivan Meza-Ruiz and Oliver Lemon School of Informatics, Edinburgh University 2 Buccleuch Place, Edinburgh I.V.Meza-Ruiz@sms.ed.ac.uk,
More informationE-3: Check for academic understanding
Respond instructively After you check student understanding, it is time to respond - through feedback and follow-up questions. Doing this allows you to gauge how much students actually comprehend and push
More informationNatural Language Processing. George Konidaris
Natural Language Processing George Konidaris gdk@cs.brown.edu Fall 2017 Natural Language Processing Understanding spoken/written sentences in a natural language. Major area of research in AI. Why? Humans
More informationPython Machine Learning
Python Machine Learning Unlock deeper insights into machine learning with this vital guide to cuttingedge predictive analytics Sebastian Raschka [ PUBLISHING 1 open source I community experience distilled
More informationCS 101 Computer Science I Fall Instructor Muller. Syllabus
CS 101 Computer Science I Fall 2013 Instructor Muller Syllabus Welcome to CS101. This course is an introduction to the art and science of computer programming and to some of the fundamental concepts of
More informationObjectives. Chapter 2: The Representation of Knowledge. Expert Systems: Principles and Programming, Fourth Edition
Chapter 2: The Representation of Knowledge Expert Systems: Principles and Programming, Fourth Edition Objectives Introduce the study of logic Learn the difference between formal logic and informal logic
More informationIAT 888: Metacreation Machines endowed with creative behavior. Philippe Pasquier Office 565 (floor 14)
IAT 888: Metacreation Machines endowed with creative behavior Philippe Pasquier Office 565 (floor 14) pasquier@sfu.ca Outline of today's lecture A little bit about me A little bit about you What will that
More informationHoughton Mifflin Online Assessment System Walkthrough Guide
Houghton Mifflin Online Assessment System Walkthrough Guide Page 1 Copyright 2007 by Houghton Mifflin Company. All Rights Reserved. No part of this document may be reproduced or transmitted in any form
More informationFONDAMENTI DI INFORMATICA
FONDAMENTI DI INFORMATICA INTRODUZIONE AL CORSO E ALL INFORMATICA Prof. Emiliano Casalicchio 09/26/14 Computer Skills - Lesson 1 - E. Casalicchio 2 Info INGEGNERIA ENERGETICA, EDILIZIA E MECCANICA Canale
More informationA Case Study: News Classification Based on Term Frequency
A Case Study: News Classification Based on Term Frequency Petr Kroha Faculty of Computer Science University of Technology 09107 Chemnitz Germany kroha@informatik.tu-chemnitz.de Ricardo Baeza-Yates Center
More informationExtending Place Value with Whole Numbers to 1,000,000
Grade 4 Mathematics, Quarter 1, Unit 1.1 Extending Place Value with Whole Numbers to 1,000,000 Overview Number of Instructional Days: 10 (1 day = 45 minutes) Content to Be Learned Recognize that a digit
More informationLecture 1: Machine Learning Basics
1/69 Lecture 1: Machine Learning Basics Ali Harakeh University of Waterloo WAVE Lab ali.harakeh@uwaterloo.ca May 1, 2017 2/69 Overview 1 Learning Algorithms 2 Capacity, Overfitting, and Underfitting 3
More informationBasic Parsing with Context-Free Grammars. Some slides adapted from Julia Hirschberg and Dan Jurafsky 1
Basic Parsing with Context-Free Grammars Some slides adapted from Julia Hirschberg and Dan Jurafsky 1 Announcements HW 2 to go out today. Next Tuesday most important for background to assignment Sign up
More informationGrades. From Your Friends at The MAILBOX
From Your Friends at The MAILBOX Grades 5 6 TEC916 High-Interest Math Problems to Reinforce Your Curriculum Supports NCTM standards Strengthens problem-solving and basic math skills Reinforces key problem-solving
More informationEntrepreneurial Discovery and the Demmert/Klein Experiment: Additional Evidence from Germany
Entrepreneurial Discovery and the Demmert/Klein Experiment: Additional Evidence from Germany Jana Kitzmann and Dirk Schiereck, Endowed Chair for Banking and Finance, EUROPEAN BUSINESS SCHOOL, International
More informationLinking Task: Identifying authors and book titles in verbose queries
Linking Task: Identifying authors and book titles in verbose queries Anaïs Ollagnier, Sébastien Fournier, and Patrice Bellot Aix-Marseille University, CNRS, ENSAM, University of Toulon, LSIS UMR 7296,
More informationRETURNING TEACHER REQUIRED TRAINING MODULE YE TRANSCRIPT
RETURNING TEACHER REQUIRED TRAINING MODULE YE Slide 1. The Dynamic Learning Maps Alternate Assessments are designed to measure what students with significant cognitive disabilities know and can do in relation
More informationChapter 4 - Fractions
. Fractions Chapter - Fractions 0 Michelle Manes, University of Hawaii Department of Mathematics These materials are intended for use with the University of Hawaii Department of Mathematics Math course
More informationDeveloping a TT-MCTAG for German with an RCG-based Parser
Developing a TT-MCTAG for German with an RCG-based Parser Laura Kallmeyer, Timm Lichte, Wolfgang Maier, Yannick Parmentier, Johannes Dellert University of Tübingen, Germany CNRS-LORIA, France LREC 2008,
More informationChinese Language Parsing with Maximum-Entropy-Inspired Parser
Chinese Language Parsing with Maximum-Entropy-Inspired Parser Heng Lian Brown University Abstract The Chinese language has many special characteristics that make parsing difficult. The performance of state-of-the-art
More informationThe Internet as a Normative Corpus: Grammar Checking with a Search Engine
The Internet as a Normative Corpus: Grammar Checking with a Search Engine Jonas Sjöbergh KTH Nada SE-100 44 Stockholm, Sweden jsh@nada.kth.se Abstract In this paper some methods using the Internet as a
More information11/29/2010. Statistical Parsing. Statistical Parsing. Simple PCFG for ATIS English. Syntactic Disambiguation
tatistical Parsing (Following slides are modified from Prof. Raymond Mooney s slides.) tatistical Parsing tatistical parsing uses a probabilistic model of syntax in order to assign probabilities to each
More informationMASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE
Master of Science (M.S.) Major in Computer Science 1 MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE Major Program The programs in computer science are designed to prepare students for doctoral research,
More informationTesting A Moving Target: How Do We Test Machine Learning Systems? Peter Varhol Technology Strategy Research, USA
Testing A Moving Target: How Do We Test Machine Learning Systems? Peter Varhol Technology Strategy Research, USA Testing a Moving Target How Do We Test Machine Learning Systems? Peter Varhol, Technology
More informationKLI: Infer KCs from repeated assessment events. Do you know what you know? Ken Koedinger HCI & Psychology CMU Director of LearnLab
KLI: Infer KCs from repeated assessment events Ken Koedinger HCI & Psychology CMU Director of LearnLab Instructional events Explanation, practice, text, rule, example, teacher-student discussion Learning
More informationAbstractions and the Brain
Abstractions and the Brain Brian D. Josephson Department of Physics, University of Cambridge Cavendish Lab. Madingley Road Cambridge, UK. CB3 OHE bdj10@cam.ac.uk http://www.tcm.phy.cam.ac.uk/~bdj10 ABSTRACT
More informationLEARN TO PROGRAM, SECOND EDITION (THE FACETS OF RUBY SERIES) BY CHRIS PINE
Read Online and Download Ebook LEARN TO PROGRAM, SECOND EDITION (THE FACETS OF RUBY SERIES) BY CHRIS PINE DOWNLOAD EBOOK : LEARN TO PROGRAM, SECOND EDITION (THE FACETS OF RUBY SERIES) BY CHRIS PINE PDF
More informationNotetaking Directions
Porter Notetaking Directions 1 Notetaking Directions Simplified Cornell-Bullet System Research indicates that hand writing notes is more beneficial to students learning than typing notes, unless there
More informationSoftware Maintenance
1 What is Software Maintenance? Software Maintenance is a very broad activity that includes error corrections, enhancements of capabilities, deletion of obsolete capabilities, and optimization. 2 Categories
More informationCourse Content Concepts
CS 1371 SYLLABUS, Fall, 2017 Revised 8/6/17 Computing for Engineers Course Content Concepts The students will be expected to be familiar with the following concepts, either by writing code to solve problems,
More informationLiquid Narrative Group Technical Report Number
http://liquidnarrative.csc.ncsu.edu/pubs/tr04-004.pdf NC STATE UNIVERSITY_ Liquid Narrative Group Technical Report Number 04-004 Equivalence between Narrative Mediation and Branching Story Graphs Mark
More informationGenevieve L. Hartman, Ph.D.
Curriculum Development and the Teaching-Learning Process: The Development of Mathematical Thinking for all children Genevieve L. Hartman, Ph.D. Topics for today Part 1: Background and rationale Current
More informationPhysics 270: Experimental Physics
2017 edition Lab Manual Physics 270 3 Physics 270: Experimental Physics Lecture: Lab: Instructor: Office: Email: Tuesdays, 2 3:50 PM Thursdays, 2 4:50 PM Dr. Uttam Manna 313C Moulton Hall umanna@ilstu.edu
More informationUsing the CU*BASE Member Survey
Using the CU*BASE Member Survey INTRODUCTION Now more than ever, credit unions are realizing that being the primary financial institution not only for an individual but for an entire family may be the
More informationMachine Learning and Data Mining. Ensembles of Learners. Prof. Alexander Ihler
Machine Learning and Data Mining Ensembles of Learners Prof. Alexander Ihler Ensemble methods Why learn one classifier when you can learn many? Ensemble: combine many predictors (Weighted) combina
More informationLearning to Think Mathematically With the Rekenrek
Learning to Think Mathematically With the Rekenrek A Resource for Teachers A Tool for Young Children Adapted from the work of Jeff Frykholm Overview Rekenrek, a simple, but powerful, manipulative to help
More informationRule Learning With Negation: Issues Regarding Effectiveness
Rule Learning With Negation: Issues Regarding Effectiveness S. Chua, F. Coenen, G. Malcolm University of Liverpool Department of Computer Science, Ashton Building, Ashton Street, L69 3BX Liverpool, United
More informationLecture 2: Quantifiers and Approximation
Lecture 2: Quantifiers and Approximation Case study: Most vs More than half Jakub Szymanik Outline Number Sense Approximate Number Sense Approximating most Superlative Meaning of most What About Counting?
More informationMathematics process categories
Mathematics process categories All of the UK curricula define multiple categories of mathematical proficiency that require students to be able to use and apply mathematics, beyond simple recall of facts
More informationWriting Research Articles
Marek J. Druzdzel with minor additions from Peter Brusilovsky University of Pittsburgh School of Information Sciences and Intelligent Systems Program marek@sis.pitt.edu http://www.pitt.edu/~druzdzel Overview
More information1 3-5 = Subtraction - a binary operation
High School StuDEnts ConcEPtions of the Minus Sign Lisa L. Lamb, Jessica Pierson Bishop, and Randolph A. Philipp, Bonnie P Schappelle, Ian Whitacre, and Mindy Lewis - describe their research with students
More informationOCR for Arabic using SIFT Descriptors With Online Failure Prediction
OCR for Arabic using SIFT Descriptors With Online Failure Prediction Andrey Stolyarenko, Nachum Dershowitz The Blavatnik School of Computer Science Tel Aviv University Tel Aviv, Israel Email: stloyare@tau.ac.il,
More informationSelf Study Report Computer Science
Computer Science undergraduate students have access to undergraduate teaching, and general computing facilities in three buildings. Two large classrooms are housed in the Davis Centre, which hold about
More informationExploration. CS : Deep Reinforcement Learning Sergey Levine
Exploration CS 294-112: Deep Reinforcement Learning Sergey Levine Class Notes 1. Homework 4 due on Wednesday 2. Project proposal feedback sent Today s Lecture 1. What is exploration? Why is it a problem?
More informationOhio s Learning Standards-Clear Learning Targets
Ohio s Learning Standards-Clear Learning Targets Math Grade 1 Use addition and subtraction within 20 to solve word problems involving situations of 1.OA.1 adding to, taking from, putting together, taking
More informationAQUA: An Ontology-Driven Question Answering System
AQUA: An Ontology-Driven Question Answering System Maria Vargas-Vera, Enrico Motta and John Domingue Knowledge Media Institute (KMI) The Open University, Walton Hall, Milton Keynes, MK7 6AA, United Kingdom.
More informationMOODLE 2.0 GLOSSARY TUTORIALS
BEGINNING TUTORIALS SECTION 1 TUTORIAL OVERVIEW MOODLE 2.0 GLOSSARY TUTORIALS The glossary activity module enables participants to create and maintain a list of definitions, like a dictionary, or to collect
More informationA Minimalist Approach to Code-Switching. In the field of linguistics, the topic of bilingualism is a broad one. There are many
Schmidt 1 Eric Schmidt Prof. Suzanne Flynn Linguistic Study of Bilingualism December 13, 2013 A Minimalist Approach to Code-Switching In the field of linguistics, the topic of bilingualism is a broad one.
More informationComputer Organization I (Tietokoneen toiminta)
581305-6 Computer Organization I (Tietokoneen toiminta) Teemu Kerola University of Helsinki Department of Computer Science Spring 2010 1 Computer Organization I Course area and goals Course learning methods
More informationLEGO MINDSTORMS Education EV3 Coding Activities
LEGO MINDSTORMS Education EV3 Coding Activities s t e e h s k r o W t n e d Stu LEGOeducation.com/MINDSTORMS Contents ACTIVITY 1 Performing a Three Point Turn 3-6 ACTIVITY 2 Written Instructions for a
More informationModule 12. Machine Learning. Version 2 CSE IIT, Kharagpur
Module 12 Machine Learning 12.1 Instructional Objective The students should understand the concept of learning systems Students should learn about different aspects of a learning system Students should
More informationOutreach Connect User Manual
Outreach Connect A Product of CAA Software, Inc. Outreach Connect User Manual Church Growth Strategies Through Sunday School, Care Groups, & Outreach Involving Members, Guests, & Prospects PREPARED FOR:
More informationa) analyse sentences, so you know what s going on and how to use that information to help you find the answer.
Tip Sheet I m going to show you how to deal with ten of the most typical aspects of English grammar that are tested on the CAE Use of English paper, part 4. Of course, there are many other grammar points
More informationMeasurement & Analysis in the Real World
Measurement & Analysis in the Real World Tools for Cleaning Messy Data Will Hayes SEI Robert Stoddard SEI Rhonda Brown SEI Software Solutions Conference 2015 November 16 18, 2015 Copyright 2015 Carnegie
More informationInteractive Whiteboard
50 Graphic Organizers for the Interactive Whiteboard Whiteboard-ready graphic organizers for reading, writing, math, and more to make learning engaging and interactive by Jennifer Jacobson & Dottie Raymer
More informationModeling user preferences and norms in context-aware systems
Modeling user preferences and norms in context-aware systems Jonas Nilsson, Cecilia Lindmark Jonas Nilsson, Cecilia Lindmark VT 2016 Bachelor's thesis for Computer Science, 15 hp Supervisor: Juan Carlos
More informationEdexcel GCSE. Statistics 1389 Paper 1H. June Mark Scheme. Statistics Edexcel GCSE
Edexcel GCSE Statistics 1389 Paper 1H June 2007 Mark Scheme Edexcel GCSE Statistics 1389 NOTES ON MARKING PRINCIPLES 1 Types of mark M marks: method marks A marks: accuracy marks B marks: unconditional
More informationConcept Acquisition Without Representation William Dylan Sabo
Concept Acquisition Without Representation William Dylan Sabo Abstract: Contemporary debates in concept acquisition presuppose that cognizers can only acquire concepts on the basis of concepts they already
More informationParallel Evaluation in Stratal OT * Adam Baker University of Arizona
Parallel Evaluation in Stratal OT * Adam Baker University of Arizona tabaker@u.arizona.edu 1.0. Introduction The model of Stratal OT presented by Kiparsky (forthcoming), has not and will not prove uncontroversial
More informationThe Interface between Phrasal and Functional Constraints
The Interface between Phrasal and Functional Constraints John T. Maxwell III* Xerox Palo Alto Research Center Ronald M. Kaplan t Xerox Palo Alto Research Center Many modern grammatical formalisms divide
More informationARNE - A tool for Namend Entity Recognition from Arabic Text
24 ARNE - A tool for Namend Entity Recognition from Arabic Text Carolin Shihadeh DFKI Stuhlsatzenhausweg 3 66123 Saarbrücken, Germany carolin.shihadeh@dfki.de Günter Neumann DFKI Stuhlsatzenhausweg 3 66123
More informationMTH 141 Calculus 1 Syllabus Spring 2017
Instructor: Section/Meets Office Hrs: Textbook: Calculus: Single Variable, by Hughes-Hallet et al, 6th ed., Wiley. Also needed: access code to WileyPlus (included in new books) Calculator: Not required,
More informationCompositional Semantics
Compositional Semantics CMSC 723 / LING 723 / INST 725 MARINE CARPUAT marine@cs.umd.edu Words, bag of words Sequences Trees Meaning Representing Meaning An important goal of NLP/AI: convert natural language
More informationCircuit Simulators: A Revolutionary E-Learning Platform
Circuit Simulators: A Revolutionary E-Learning Platform Mahi Itagi Padre Conceicao College of Engineering, Verna, Goa, India. itagimahi@gmail.com Akhil Deshpande Gogte Institute of Technology, Udyambag,
More informationOn Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC
On Human Computer Interaction, HCI Dr. Saif al Zahir Electrical and Computer Engineering Department UBC Human Computer Interaction HCI HCI is the study of people, computer technology, and the ways these
More informationExperiments with SMS Translation and Stochastic Gradient Descent in Spanish Text Author Profiling
Experiments with SMS Translation and Stochastic Gradient Descent in Spanish Text Author Profiling Notebook for PAN at CLEF 2013 Andrés Alfonso Caurcel Díaz 1 and José María Gómez Hidalgo 2 1 Universidad
More informationRadius STEM Readiness TM
Curriculum Guide Radius STEM Readiness TM While today s teens are surrounded by technology, we face a stark and imminent shortage of graduates pursuing careers in Science, Technology, Engineering, and
More informationAction Models and their Induction
Action Models and their Induction Michal Čertický, Comenius University, Bratislava certicky@fmph.uniba.sk March 5, 2013 Abstract By action model, we understand any logic-based representation of effects
More informationLesson 12. Lesson 12. Suggested Lesson Structure. Round to Different Place Values (6 minutes) Fluency Practice (12 minutes)
Objective: Solve multi-step word problems using the standard addition reasonableness of answers using rounding. Suggested Lesson Structure Fluency Practice Application Problems Concept Development Student
More informationTeaching a Laboratory Section
Chapter 3 Teaching a Laboratory Section Page I. Cooperative Problem Solving Labs in Operation 57 II. Grading the Labs 75 III. Overview of Teaching a Lab Session 79 IV. Outline for Teaching a Lab Session
More information1.11 I Know What Do You Know?
50 SECONDARY MATH 1 // MODULE 1 1.11 I Know What Do You Know? A Practice Understanding Task CC BY Jim Larrison https://flic.kr/p/9mp2c9 In each of the problems below I share some of the information that
More information