Languages' - PowerPoint PPT Presentation

1 / 33
About This Presentation
Title:

Languages'

Description:

at arbitrary rates relative to one another. In fact the interleaving' ... only be in one state, by associating each subset of states of the NDA with one state ... – PowerPoint PPT presentation

Number of Views:29
Avg rating:3.0/5.0
Slides: 34
Provided by: RKB2
Category:
Tags: fact | languages

less

Transcript and Presenter's Notes

Title: Languages'


1
Languages. A Language is set of finite length
strings on the symbol set
i.e. a subset of
  • (a b c a c d f g g g)
  • At this point, we dont care how the language is
  • generated or represented. So initially the
    comments
  • apply to all kinds of languages
  • regular
  • -regular
  • push-down automata languages
  • Petri net languages
  • A symbol can be made up of a vector of
  • variable values, e.g. 1a3de0 or 010010.
  • These are examples of a single symbol.
  • Languages can be manipulated as follows

2
Examples of Languages
  • Alphabet ? a, b, c. Language includes all the
    strings, in which all occurrences of a appear
    before all occurrences of b
  • ?, a, b, c, ab, ac, acb, cab, aacaabbbccb,
  • Strings not in the language
  • ba, aacabbaccc,
  • Binary variables x, y. ?x ?y 0,1,
  • ? ?x ? ?y 00, 01, 10, 11. Language
    includes all the strings appearing as
    input/output combinations of the given circuit
    (reset to 0)
  • (00), (10), (00)(00)(00), (00)(10)(11),
  • Strings not in the language
  • (01), (11), (00)(01),

x
y
DFF
3
  • Union
  • Intersection -
  • Complement -
  • Catenation -

4
  • Lowering and Raising
  • Given a Language

over the alphabet
projection is defined as
  • Given a Language L over the alphabet X lifting
  • to the alphabet

is defined as -

5
Examples of Projection and Lifting
  • Binary variables x, y, z. ?x ?y ?z 0,1.
  • ?xyz ?x ? ?y ? ?z 000, 001, 010, 011, 100,
    101, 110, 111. Language includes all the strings
    that can appear as input/output combinations of
    the given circuit (reset to 0)
  • ?,(000), (110)(001)(100),
  • Projecting to alphabet ?xz
  • (00), (10)(01)(10),
  • Lifting to alphabet ?xyzu ?xyz ? ?u
  • (000-), (110-)(001-)(100-),
  • (0000), (0001),
  • (1100)(0010)(1000),
  • (1100)(0010)(1001),
  • (1100)(0011)(1000),

x
z
DFF
y
6
  • Given a Language L over the alphabet

the restriction to X is defined as -
where
  • Given a Language L over X and an alphabet Y
    disjoint
  • from X, the expansion of L is defined as the
    language

over
such that -
7
Regular Expressions. Regular Expressions over
alphabet
is a regular expression
is a regular expression
are regular expression If r and
s are regular expressions then rs, r s, and
are regular expressions. The language associated
with a regular expression is called a regular
language. Theorem The complement of a regular
language is a regular language
8
Examples of Regular Expressions
  • Regular expression a b stands for a,b
  • Regular expression ab stands for ab
  • Regular expression a stands for ?,a, aa, aaa,
    aaaa,
  • Alphabet ? a, b, c. Language includes all the
    strings, in which all occurrences of a appear
    before all occurrences of b
  • (ac)(bc)
  • Alphabet ? ?x ? ?y 00, 01, 10, 11.
    Language includes all the strings appearing as
    input/output combinations of the given circuit
    (reset to 0)
  • ( (00)(10)(11)(01) )

10
00
11
x
y
0
1
DFF
01
9
  • Classes of Languages
  • A language is prefix closed if
  • A language over

is I-progressive if
  • A language over

is I-Moore if
10
Examples of Languages
  • Prefix-closed language includes, with its every
    string, all the prefixes of this string.
  • Example 1 Language ab is prefix closed
  • Example 2 Language ab is not prefix closed
  • I-progressive language includes the strings,
    which, for each input symbol, have some output
    symbol
  • Example 1 Language ( (00)(10)(11)(01) ) is
    I-progressive
  • Example 2 Language ( (00)(10)(01) ) is not
    I-progressive

10
10
00
00
11
0
1
0
1
01
01
11
  • Classes of Languages
  • A language

over
is prefix closed if
A language
over
is IO-progressive if
12
  • Composition of Languages
  • Given disjoint alphabets I,U,O and languages L1
    over

and L2 over
, their synchronous composition is
  • .
  • Given disjoint alphabets I,U,O and languages L1
    over

and L2 over
, their parallel composition is
.
13
Synchronous Composition
Specification
  • Spec is defined over I?O
  • Fixed is defined over I?V?U?O
  • Unknown should be over U?V
  • The solution to the equation
  • F ? X ? S
  • is
  • More specifically

S
I
O
Fixed
F
V
U
Unknown
X
14
While synchronous product often is thought to be
a simple even uninteresting type of
coordination, it can be shown that, through the
use of non-determinism, this conceptually
simple coordination serves to model the most
general asynchronous coordination, i.e. where
processes progress at arbitrary rates relative
to one another. In fact the interleaving
model, the most common model for asynchrony in
the software community, can be viewed as a
special case of this synchronous product
Kurshan, 1994. Uses non-determinism and self
loops with null transitions at each state to
model parallel with synchronous.
15
Finite Automata A finite automaton (FA) is
where S is a set of states,
is an input alphabet,
is a transition relation, r is the initial
state, and
is the set of accepting states.
16
An input sequence
leads from r to s if there exists a sequence of
states,
for all i
0, ... ,n-1. w is in the language of F (
)
such that
if and only if w leads from r to
where
i.e.
denotes the set of states that can be reached
from r under the input sequence w.
17
Examples of Finite Automata
  • Example 1 Language ab is prefix closed
  • Example 2 Language ab is not prefix closed

a
a
b
X
Y
X
Y
b
b
18
Theorem A languages is regular if and only if it
is the language of a finite automaton Theorem
The set of all languages for deterministic FA is
the same as for non-deterministic FA. (we will
show how this can be done using the so-called
subset construction.)
19
  • Operations on FA.
  • projection (

) convert F over
  • into F over X by replacing each edge (xv s s)
    by the edge (x s s)
  • lifting (

) convert F over X into F over
where
by replacing each edge (x s s) by
stands for any
.
20
Examples of Projection and Lifting
Projection ?y
Lifting ?u
Note Automaton after projection is
non-deterministic
21
  • restriction (

) convert F over
to F over V, by changing every edge (v s s)
where
into ( )
  • expansion (

) Change F over X into F over
by adding for each state, a self-loop for all v,
i.e. add an edge
where
stands for any
22
Operations on FA. Product Given FAs
both over
, the product is
where
Complementation If F is deterministic, then
. If F is non-deterministic, the only known way
for complementation is to determinize it first.
This is done by the sub-set construction.
23
Example of Product of Automata

24
Composition Synchronous Composition. Given two
automata
and
over alphabets
and
their synchronous composition is
  • i.e. the product of the two automata when they
    are
  • made to have the same alphabet.
  • Parallel Composition. Given two automata

and
on alphabets
and
their synchronous composition is
  • i.e. the product of the two automata when they
    are made
  • to have the same alphabet.

25
Subset Construction Given NFA
we create a DFA F with the same language as F
where
and

Theorem F and F have the same language. Proof
26
Interpretation of Subset Construction
  • Non-deterministic automaton (NDA) can transit
    into several states under the same input
  • We can think of these transitions happening at
    the same time
  • It means that the NDA can be in several states at
    the same time
  • If string s has driven an NDA into a subset of
    states containing at least one accepting state, s
    is accepted
  • Non-determinism is useful to compactly represent
    languages, but manipulation of NDAs is hard
  • Determinization consists in constructing a DA
    equivalent to the given NDA
  • Determinization procedure performs subset
    construction
  • The idea of subset construction is to transform
    (unfold) the NDA, which can be in a subset of
    states, into a DA, which can only be in one
    state, by associating each subset of states of
    the NDA with one state of the DA

27
Example of Subset Construction
28
Finite State Machines as Automata A FSM is
where I is the set of input symbols, O the set of
output symbols, r the initial state, and
T(s,i,s,o) is the transition relation. A
transition (s,i,s,o) from state s to s with
output o can happen on input i can if and only
if
If
then M is complete, otherwise partial.
29
It is deterministic if for all (s,i) there is at
most one (s,o) such that
It is pseudo-non-deterministic if for all
(s,i,o) there is at most one s such that
A FSM is of Moore type if
i.e. i can determine the next state but not the
output.
30
Examples of FSMs
Non-Deterministic FSM
Circuit
Deterministic FSM
Pseudo-Non-Deterministic FSM
31
Converting an FSM to an automaton An FSM M can be
converted into an automaton F by the following
where
Note that Q S, i.e. all states are
accepting The resulting automaton is typically
not complete, since there are io combinations
for which a next state is not defined. We can
complete it by augmenting
to include a transition to a new non-accepting
state DCN.
32
Converting FSM into Automaton
FSM
Complete Automaton
110
000 010100
111
001 011101
0
1
Incomplete Automaton
001 011101111
000 010100110
3
- - -
33
FSMs as Automata The language of an FSM is
defined to be the language of the associated
automaton A pseudo non-deterministic FSM is one
whose automaton is deterministic. The
language of an FSM is prefix closed.
The language of an FSM is I-progressive Conversi
on
is done by grouping i/o on edges to (io) and
making all states accepting. Conversion
can be done only if the language is prefix closed
and I-progressive. In this case, delete all
non-accepting states (prefix), and change edges
from (io) to i/o.
Write a Comment
User Comments (0)
About PowerShow.com