Download presentation
Presentation is loading. Please wait.
1
CIS 5513 - Automata and Formal Languages – Pei Wang
2
Abstract machines Automata: machines, devices, or systems described abstractly for the purpose of computability Focus: common features of different devices, as well as their limitations Abstraction: internal activity as transitions through discrete states; external interaction as streams of symbols
3
Examples An on/off switch A pocket calculator that computes the value of arithmetic expressions A lexical analyzer that recognizes certain keywords In principle, any software or hardware can be analyzed as an automaton, though such an analysis only answers certain questions
4
Automata and formal languages
The external features of automata can be described as formal languages A formal language is defined as a set of symbolic sentences The patterns of the sentences of a formal language can be summarized into a grammar or expression There is a correspondence between automata and formal languages
5
String and word An alphabet is a finite, nonempty set of symbols, usually written as ∑ (sigma), such as {0, 1} or {a, b, …, z} A string (word) is a finite sequence of symbols chosen from some alphabet, such as 01001, cis, or ϵ (epsilon, empty string) The length of a string is the number of symbols in it, so |01001| = 5, |ϵ| = 0
6
Strings ∑k is the set of all strings of length k formed by symbols in ∑ ∑* is the set of all strings of any finite length formed by symbols in ∑ (Kleene star) ∑* = ∑0 ∑1 ∑2 … ∑+ = ∑1 ∑2 … Let x and y be strings, then xy is their concatenation, and |xy| = |x| + |y|
7
Formal languages A language over ∑ is a subset of ∑*. E.g.:
8
Problems and languages
In mathematics and computer science, a “problem” is often defined as a function from input to output In principle, a function problem can be converted into a decision problem that only has “yes/no” answers So to solve a problem means to decide whether a given string belongs to a particular language
9
Languages and automata
Example: Lp over {0, 1} consisting of all binary strings whose value as a binary number is a prime, so 101 belongs to the language, but not 1001 and 0101 An automaton accepts a language by transitioning between some special states for the instances of the language So each automaton solves a problem
10
Mathematical proofs Mathematical conclusions (theorems) are obtained by proofs Deductive proof: to build a sequence of sentences, each is either an axiom or can be derived from axioms and proven theorems Proof by contradiction: to negate a statement and derive a contradiction from it Mathematical induction: starting from a base, to extend the conclusion step by step to infinite
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.