Rationality & Recognisability An introduction to weighted - - PowerPoint PPT Presentation

rationality recognisability
SMART_READER_LITE
LIVE PREVIEW

Rationality & Recognisability An introduction to weighted - - PowerPoint PPT Presentation

Rationality & Recognisability An introduction to weighted automata theory Tutorial given at post-WATA 2014 Workshop Jacques Sakarovitch CNRS / Telecom ParisTech Based on Chapter III Chapter 4 The presentation is also much inspired by


slide-1
SLIDE 1

Rationality & Recognisability

An introduction to weighted automata theory

Tutorial given at post-WATA 2014 Workshop Jacques Sakarovitch

CNRS / Telecom ParisTech

slide-2
SLIDE 2

Based on Chapter III Chapter 4

slide-3
SLIDE 3

The presentation is also much inspired by joint works with

Sylvain Lombardy

(Univ. Bordeaux) entitled

◮ On the equivalence and conjugacy of weighted automata,

CSR 2006, the journal version is still under prepapration.

◮ The validity of weighted automata, CIAA 2012 & IJAC 2013. ◮ Vaucanson 2 (2010–2014),

a platform for computing with weighted automata.

slide-4
SLIDE 4

Outline of the tutorial

  • 1. The model
  • 2. Rationality
  • 3. Recognisability
slide-5
SLIDE 5

Part I The model of weighted automata

slide-6
SLIDE 6

Outline of Part I

◮ Models of computation

for computer science anf for the rest of the world

◮ 1-way Turing machines are equivalent to finite automata ◮ Once the finite automaton model is well-established,

it is generalised to weighted automata

◮ Weigthed automata are the linear algebra of computer science

slide-7
SLIDE 7

A touch of general system theory

p

State Finite control

a1 a2 a3 a4 an

$

k1 k2 k3 k4 kl

$

Paradigm of a machine for the computer scientists

slide-8
SLIDE 8

A touch of general system theory

input

  • utput

Paradigm of a machine for the rest of the world

slide-9
SLIDE 9

A touch of general system theory α(·)

y x y = α(x)

Paradigm of a machine for the rest of the world

slide-10
SLIDE 10

A touch of general system theory α(·)

y x y = α(x) x ∈ Rn , y ∈ Rm

Paradigm of a machine for the rest of the world

slide-11
SLIDE 11

Getting back to computer science α(·)

x y

slide-12
SLIDE 12

Getting back to computer science α(·)

w ∈ A∗ y

The input belongs to a free monoid A∗

slide-13
SLIDE 13

Getting back to computer science α(·)

w ∈ A∗ B ∋ k

The input belongs to a free monoid A∗ The output belongs to the Boolean semiring B

slide-14
SLIDE 14

Getting back to computer science

w ∈ A∗ B ∋ k L L ⊆ A∗

The input belongs to a free monoid A∗ The output belongs to the Boolean semiring B The function realised is a language

slide-15
SLIDE 15

Getting back to computer science α(·)

(u, v) ∈ A∗×B∗ B ∋ k

The input belongs to a direct product of free monoids A∗×B∗ The output belongs to the Boolean semiring B

slide-16
SLIDE 16

Getting back to computer science

(u, v) ∈ A∗×B∗ B ∋ k R R ⊆ A∗×B∗

The input belongs to a direct product of free monoids A∗×B∗ The output belongs to the Boolean semiring B The function realised is a relation between words

slide-17
SLIDE 17

The simplest Turing machine

p

State Finite control

a1 a2 a3 a4 an

$

Direction of movement of the read head The 1-way 1-tape Turing Machine (1W 1T TM)

slide-18
SLIDE 18

The simplest Turing machine is equivalent to finite automata

p q b a b a b

B1

slide-19
SLIDE 19

The simplest Turing machine is equivalent to finite automata

p q b a b a b

B1 bab ∈ A∗

slide-20
SLIDE 20

The simplest Turing machine is equivalent to finite automata

p q b a b a b

B1 bab ∈ A∗ − → p

b

− − →p

a

− → p

b

− − → q − → − → p

b

− − →q

a

− → q

b

− − → q − →

slide-21
SLIDE 21

The simplest Turing machine is equivalent to finite automata

p q b a b a b

B1 L(B1) ⊆ A∗ bab ∈ A∗ − → p

b

− − →p

a

− → p

b

− − → q − → − → p

b

− − →q

a

− → q

b

− − → q − → L(B1) = {w ∈ A∗| w ∈ A∗bA∗} = {w ∈ A∗| |w|b 1}

slide-22
SLIDE 22

Rational (or regular) languages Languages accepted (or recognized) by finite automata

=

Languages described by rational (or regular) expressions

=

Languages defined by MSO formulae

slide-23
SLIDE 23

Remarkable features of the finite automaton model Decidable equivalence (decidable inclusion) Closure under complement Canonical automaton (minimal deterministic automaton)

slide-24
SLIDE 24

The 1W kT Turing machine

p

State Finite control

a1 a2 a3 a4 an

$

k1 k2 k3 k4 kl

$

Direction of movement of the k read heads The 1-way k-tape Turing Machine (1W kT TM)

slide-25
SLIDE 25

The 1W kT Turing machine is equivalent to finite transducers

p q r

1|a 1|ab a|1 b|1 a|ab b|b a|a b|ba

G1

slide-26
SLIDE 26

The 1W kT Turing machine is equivalent to finite transducers

p q r

1|a 1|ab a|1 b|1 a|ab b|b a|a b|ba

G1 − → p

a|1

− − → q

b|1

− − − → r

b|b a

− − − → q

1|a

− − →

slide-27
SLIDE 27

The 1W kT Turing machine is equivalent to finite transducers

p q r

1|a 1|ab a|1 b|1 a|ab b|b a|a b|ba

G1 − → p

a|1

− − → q

b|1

− − − → r

b|b a

− − − → q

1|a

− − → (abb, baa) ∈ G1

slide-28
SLIDE 28

The 1W kT Turing machine is equivalent to finite transducers

p q r

1|a 1|ab a|1 b|1 a|ab b|b a|a b|ba

G1 − → p

a|1

− − → q

b|1

− − − → r

b|b a

− − − → q

1|a

− − → (abb, baa) ∈ G1 G1 ⊆ A∗×B∗

slide-29
SLIDE 29

Features and shortcomings of the finite transducer model Closure under composition Closure of Chomsky classes under rational relations Interesting subclasses of rational relations Non closure under complement Undecidable equivalence

slide-30
SLIDE 30

Automata versus languages

p q b a b a b

B1 L(B1) ⊆ A∗

slide-31
SLIDE 31

Automata versus languages

p q b a b a b

B1 L(B1) ⊆ A∗

p q b a a b

B′

1

L(B′

1) ⊆ A∗

slide-32
SLIDE 32

Automata versus languages

p q b a b a b

B1 L(B1) ⊆ A∗

p q b a a b

B′

1

L(B′

1) ⊆ A∗

L(B1) = L(B′

1) =

  • w ∈ A∗

|w|b 1

slide-33
SLIDE 33

Automata versus languages

p q b a b a b

B1 L(B1) ⊆ A∗

p q b a a b

B′

1

L(B′

1) ⊆ A∗

L(B1) = L(B′

1) =

  • w ∈ A∗

|w|b 1

  • = A∗bA∗
slide-34
SLIDE 34

Automata versus languages

p q b a b a b

B1 L(B1) ⊆ A∗

p q b a a b

B′

1

L(B′

1) ⊆ A∗

Counting the number of successful computations B1 : bab − → 2 B′

1 : bab

− → 1

slide-35
SLIDE 35

Automata versus languages

p q b a b a b

B1 L(B1) ⊆ A∗

p q b a a b

B′

1

L(B′

1) ⊆ A∗

Counting the number of successful computations B1 : w − → |w|b B′

1 : w

− → 1

slide-36
SLIDE 36

A new automaton model

w ∈ A∗ N ∋ k

α(·)

The input belongs to a free monoid A∗ The output belongs to the integer semiring N

slide-37
SLIDE 37

A new automaton model

w ∈ A∗ N ∋ k s s : A∗ → N

The input belongs to a free monoid A∗ The output belongs to the integer semiring N The function realised is a function from A∗ to N

slide-38
SLIDE 38

A new automaton model

w ∈ A∗ N ∋ k s s : A∗ → N s ∈ N A∗

  • The input belongs to a free monoid A∗

The output belongs to the integer semiring N The function realised is a function from A∗ to N we call it a series

slide-39
SLIDE 39

A new automaton model

w ∈ A∗ N ∋ k s s : A∗ → N s ∈ N A∗

  • s1 = b + ab + b a + 2b b + aab + · · · + 2b b a + 3b b b + · · ·

The input belongs to a free monoid A∗ The output belongs to the integer semiring N The function realised is a function from A∗ to N we call it a series

slide-40
SLIDE 40

The weighted automaton model

p q b a b a b

B1

slide-41
SLIDE 41

The weighted automaton model

p q b a b 2a 2b

C1

slide-42
SLIDE 42

The weighted automaton model

p q b a b 2a 2b

C1

1

− − → p

b

− − →p

a

− − → p

b

− − → q

1

− − →

1

− − → p

b

− − →q

2 a

− − − → q

2 b

− − − → q

1

− − →

slide-43
SLIDE 43

The weighted automaton model

p q b a b 2a 2b

C1

1

− − → p

b

− − →p

a

− − → p

b

− − → q

1

− − →

1

− − → p

b

− − →q

2 a

− − − → q

2 b

− − − → q

1

− − →

◮ Weight of a path c: product of the weights of transitions in c ◮ Weight of a word w: sum of the weights of paths with label w

.

slide-44
SLIDE 44

The weighted automaton model

p q b a b 2a 2b

C1

1

− − → p

b

− − →p

a

− − → p

b

− − → q

1

− − →

1

− − → p

b

− − →q

2 a

− − − → q

2 b

− − − → q

1

− − →

◮ Weight of a path c: product of the weights of transitions in c ◮ Weight of a word w: sum of the weights of paths with label w

. b ab − → 1 + 4 = 5

slide-45
SLIDE 45

The weighted automaton model

p q b a b 2a 2b

C1

1

− − → p

b

− − →p

a

− − → p

b

− − → q

1

− − →

1

− − → p

b

− − →q

2 a

− − − → q

2 b

− − − → q

1

− − →

◮ Weight of a path c: product of the weights of transitions in c ◮ Weight of a word w: sum of the weights of paths with label w

. b ab − → 1 + 4 = 5 = 1012

slide-46
SLIDE 46

The weighted automaton model

p q b a b 2a 2b

C1 C1 ∈ N A∗

  • 1

− − → p

b

− − →p

a

− − → p

b

− − → q

1

− − →

1

− − → p

b

− − →q

2 a

− − − → q

2 b

− − − → q

1

− − →

◮ Weight of a path c: product of the weights of transitions in c ◮ Weight of a word w: sum of the weights of paths with label w

. b ab − → 1 + 4 = 5 C1 : A∗ − → N

slide-47
SLIDE 47

The weighted automaton model

p q b a b 2a 2b

C1 C1 ∈ N A∗

  • 1

− − → p

b

− − →p

a

− − → p

b

− − → q

1

− − →

1

− − → p

b

− − →q

2 a

− − − → q

2 b

− − − → q

1

− − →

◮ Weight of a path c: product of the weights of transitions in c ◮ Weight of a word w: sum of the weights of paths with label w

. C1 = b + ab + 2b a + 3b b + aab + 2ab a + · · · + 5b ab + · · ·

slide-48
SLIDE 48

The weighted automaton model (2)

p q 0a 1b 1a 0b

L1 L1 ∈ Zmin A∗

− → p

1 b

− − − →p

0 a

− − − → p

1 b

− − − → p − − → − − → q

0 b

− − − →q

1 a

− − − → q

0 b

− − − → q − − →

◮ Weight of a path c:

product, that is, the sum, of the weights of transitions in c

◮ Weight of a word w:

sum, that is, the min of the weights of paths with label w b ab − → min(1 + 0 + 1, 0 + 1 + 0) = 1 L1 : A∗ − → Zmin

slide-49
SLIDE 49

The weighted automaton model (2)

p q 0a 1b 1a 0b

L1 L1 ∈ Zmin A∗

− → p

1 b

− − − →p

0 a

− − − → p

1 b

− − − → p − − → − − → q

0 b

− − − →q

1 a

− − − → q

0 b

− − − → q − − →

◮ Weight of a path c:

product, that is, the sum, of the weights of transitions in c

◮ Weight of a word w:

sum, that is, the min of the weights of paths with label w C1 = 01A∗ + 0a + 0b + 1ab + 1b a + 0b b + · · · + 1b ab + · · ·

slide-50
SLIDE 50

The weighted automaton model (system theory mode)

w ∈ A∗ K ∋ k s s : A∗ → K s ∈ K A∗

  • The input belongs to a free monoid A∗

The output belongs to a semiring K The function realised is a function from A∗ to K: a series in K A∗

slide-51
SLIDE 51

The weighted automaton model (sytem theory mode)

(u, v) ∈ A∗×B∗ K ∋ k s s : A∗×B∗ → K s ∈ K A∗×B∗

  • The input belongs to a direct product of free monoids A∗×B∗

The output belongs to a semiring K The function realised is a function from A∗×B∗ to K: a series in K A∗×B∗

slide-52
SLIDE 52

Richness of the model of weighted automata

◮ B

‘classic’ automata

◮ N

‘usual’ counting

◮ Z , Q , R

numerical multiplicity

◮ Z ∪ +∞, min, +

Min-plus automata

◮ Z, min, max

fuzzy automata

◮ P (B∗) = B

B∗

  • transducers

◮ N

B∗

  • weighted transducers

◮ P (F(B))

pushdown automata

slide-53
SLIDE 53

Series play the role of languages K A∗ plays the role of P (A∗)

slide-54
SLIDE 54

Series play the role of relations K A∗×B∗ plays the role of P (A∗×B∗)

slide-55
SLIDE 55

Weighted automata theory is the linear algebra

  • f computer science
slide-56
SLIDE 56

Part II Rationality

slide-57
SLIDE 57

Outline of Part II

◮ Definition of rational series ◮ The Fundamental Theorem of Finite Automata

What can be computed by a finite automaton is exactly what can be computed by the star operation (together with the algebra operations)

◮ Morphisms of weighted automata

slide-58
SLIDE 58

The semiring K A∗

  • K semiring

A∗ free monoid s ∈ K A∗

  • s : A∗ → K

s : w − → s, w s =

  • w∈A∗

s, w w Point-wise addition s + t, w = s, w + t, w Cauchy product s t, w =

  • u v=w

s, ut, v {(u, v)| u v = w} finite = ⇒ Cauchy product well-defined

K A∗ is a semiring

slide-59
SLIDE 59

The semiring K M

  • K semiring

M monoid s ∈ K M

  • s : M → K

s : m − → s, m s =

  • m∈M

s, mm Point-wise addition s + t, m = s, m + t, m Cauchy product s t, m =

  • x y=m

s, x t, y ∀m {(x, y)| x y = m} finite = ⇒ Cauchy product well-defined

slide-60
SLIDE 60

The semiring K M

  • Conditions for

{(x, y)| x y = m} finite for all m

Definition

M is graded if M equipped with a length function ϕ ϕ: M → N ϕ(mm′) = ϕ(m) + ϕ(m′)

M f.g. and graded = ⇒ K M is a semiring

Examples

M trace monoid, then K M is a semiring K A∗×B∗ is a semiring F(A) , the free group on A , is not graded

slide-61
SLIDE 61

The algebra K M

  • K semiring

M f.g. graded monoid s ∈ K A∗

  • s : M → K

s : m − → s, m s =

  • m∈M

s, mm Point-wise addition s + t, m = s, m + t, m Cauchy product s t, m =

  • x y=m

s, x t, y External multiplication k s, m = k s, m

K M is an algebra

slide-62
SLIDE 62

The star operation

t ∈ K t∗ =

  • n∈N

tn

How to define infinite sums ? One possible solution Topology on K

Definition of summable families and of their sum

t∗ defined if {tn}n∈N summable Other possible solutions

axiomatic definition of star, equational definition of star

slide-63
SLIDE 63

The star operation

t ∈ K t∗ =

  • n∈N

tn

slide-64
SLIDE 64

The star operation

t ∈ K t∗ =

  • n∈N

tn

◮ ∀K

(0K)∗ = 1K

◮ K = N

∀x = 0 x∗ not defined.

◮ K = N = N ∪ {+∞}

∀x = 0 x∗ = ∞ .

◮ K = Q

(1

2)∗ = 2 with the natural topology,

(1

2)∗ is undefined with the discrete topology.

slide-65
SLIDE 65

The star operation

t ∈ K t∗ =

  • n∈N

tn

In any case t∗ = 1K + t t∗ Star has the same flavor as the inverse If K is a ring t∗ (1K − t) = 1K 1K 1K − t = 1K + t + t2 + · · · + tn + · · ·

slide-66
SLIDE 66

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

slide-67
SLIDE 67

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

Topology on K yields topology on K A∗

slide-68
SLIDE 68

The simple convergence topology on K A∗

  • Topology on K given by a distance c

c: K × K → R+

slide-69
SLIDE 69

The simple convergence topology on K A∗

  • Topology on K given by a distance c

c: K × K → R+

  • symmetry:

c(x, y) = c(y, x)

  • positivity:

c(x, y) > 0 if x = y and c(x, x) = 0

  • triangular inequality:

c(x, y) c(x, z) + c(y, z)

slide-70
SLIDE 70

The simple convergence topology on K A∗

  • Topology on K given by a distance c

c: K × K → R+

  • symmetry:

c(x, y) = c(y, x)

  • positivity:

c(x, y) > 0 if x = y and c(x, x) = 0

  • triangular inequality:

c(x, y) c(x, z) + c(y, z) A sequence {kn}n∈N of elements of K converges toward k k = limn→+∞kn ∀ε > 0 ∃N ∈ N ∀n N c(kn, k) ε

slide-71
SLIDE 71

The simple convergence topology on K A∗

  • Topology on K given by a distance c

c: K × K → R+

  • symmetry:

c(x, y) = c(y, x)

  • positivity:

c(x, y) > 0 if x = y and c(x, x) = 0

  • triangular inequality:

c(x, y) c(x, z) + c(y, z) A sequence {kn}n∈N of elements of K converges toward k k = limn→+∞kn ∀ε > 0 ∃N ∈ N ∀n N c(kn, k) ε

Remark

Always assume c(x, y) 1

slide-72
SLIDE 72

The simple convergence topology on K A∗

  • Topology on K given by a distance c

c: K × K → R+

  • symmetry:

c(x, y) = c(y, x)

  • positivity:

c(x, y) > 0 if x = y and c(x, x) = 0

  • triangular inequality:

c(x, y) c(x, z) + c(y, z) A sequence {kn}n∈N of elements of K converges toward k k = limn→+∞kn ∀ε > 0 ∃N ∈ N ∀n N c(kn, k) ε

Remark

Always assume c(x, y) 1

Remark

Discrete topology x = y ⇒ c(x, y) = 1 Converging sequences = stationnary sequences

slide-73
SLIDE 73

The simple convergence topology on K A∗

  • ◮ B, N, Z,

discrete topology

◮ M = N, min, +

discrete topology

◮ Q, Q+, R, R+

“natural distance”

slide-74
SLIDE 74

The simple convergence topology on K A∗

  • Definition

{sn}n∈N, sn ∈ K A∗ , converges toward s iff ∀w ∈ A∗ sn, w converges toward s, w in K.

slide-75
SLIDE 75

The simple convergence topology on K A∗

  • Definition

{sn}n∈N, sn ∈ K A∗ , converges toward s iff ∀w ∈ A∗ sn, w converges toward s, w in K. The simple convergence topology on K A∗

  • is defined by a distance d :
slide-76
SLIDE 76

The simple convergence topology on K A∗

  • Definition

{sn}n∈N, sn ∈ K A∗ , converges toward s iff ∀w ∈ A∗ sn, w converges toward s, w in K. The simple convergence topology on K A∗

  • is defined by a distance d :

If K is equipped with the discrete topology: e(s, t) = min {n ∈ N| ∃w ∈ A∗ |w| = n and s, w = t, w } , d(s, t) = 2−e(s,t)

slide-77
SLIDE 77

The simple convergence topology on K A∗

  • Definition

{sn}n∈N, sn ∈ K A∗ , converges toward s iff ∀w ∈ A∗ sn, w converges toward s, w in K. The simple convergence topology on K A∗

  • is defined by a distance d :

If K is equipped with the topology defined by the distance c: d(s, t) = 1 2

  • n∈N

1 2n max {c(s, w , t, w )| |w| = n}

  • .
slide-78
SLIDE 78

The simple convergence topology on K A∗

  • Proposition

If K is a topological semiring, then K A∗ , equipped with the simple convergence topology, is a topological semiring.

slide-79
SLIDE 79

The simple convergence topology on K A∗

  • Proposition

If K is a topological semiring, then K A∗ , equipped with the simple convergence topology, is a topological semiring.

Definition

Summable family of series.

slide-80
SLIDE 80

The simple convergence topology on K A∗

  • Proposition

If K is a topological semiring, then K A∗ , equipped with the simple convergence topology, is a topological semiring.

Definition

Summable family of series.

Definition

Locally finite family of series.

slide-81
SLIDE 81

The simple convergence topology on K A∗

  • Proposition

If K is a topological semiring, then K A∗ , equipped with the simple convergence topology, is a topological semiring.

Definition

Summable family of series.

Definition

Locally finite family of series.

Proposition

A locally finite family of series is summable.

slide-82
SLIDE 82

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

Topology on K yields topology on K A∗

slide-83
SLIDE 83

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

Topology on K yields topology on K A∗

  • s proper

s0 = s, 1A∗ = 0K

slide-84
SLIDE 84

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

Topology on K yields topology on K A∗

  • s proper

s0 = s, 1A∗ = 0K

s proper = ⇒ s∗ defined

slide-85
SLIDE 85

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

Topology on K yields topology on K A∗

  • s proper

s0 = s, 1A∗ = 0K

s proper = ⇒ s∗ defined

∀s ∈ K A∗

  • s = s0 + sp

with sp proper

slide-86
SLIDE 86

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

Topology on K yields topology on K A∗

  • s proper

s0 = s, 1A∗ = 0K

s proper = ⇒ s∗ defined

∀s ∈ K A∗

  • s = s0 + sp

with sp proper

Definition

K strong product of two summable families summable.

slide-87
SLIDE 87

Star of series

s ∈ K A∗

  • When is s∗ =
  • n∈N

sn defined ?

Topology on K yields topology on K A∗

  • s proper

s0 = s, 1A∗ = 0K

s proper = ⇒ s∗ defined

∀s ∈ K A∗

  • s = s0 + sp

with sp proper

Definition

K strong product of two summable families summable.

Proposition

K strong, s ∈ K A∗

  • s∗ is defined iff s∗

0 is defined

s∗ = (s∗

0 sp)∗s∗ 0 = s∗ 0(sp s∗ 0)∗

slide-88
SLIDE 88

Rational series KA∗ ⊆ K A∗

  • subalgebra of polynomials

KRat A∗ closure of KA∗ under

◮ sum ◮ product ◮ exterior multiplication ◮ and star

KRat A∗ ⊆ K A∗

  • subalgebra of rational series
slide-89
SLIDE 89

Fundamental theorem of finite automata Theorem s ∈ KRat A∗ ⇐ ⇒ ∃A ∈ KWA (A∗) s = | | |A| | |

slide-90
SLIDE 90

Fundamental theorem of finite automata Theorem s ∈ KRat A∗ ⇐ ⇒ ∃A ∈ KWA (A∗) s = | | |A| | |

Kleene theorem ?

slide-91
SLIDE 91

Fundamental theorem of finite automata Theorem s ∈ KRat A∗ ⇐ ⇒ ∃A ∈ KWA (A∗) s = | | |A| | |

Kleene theorem ?

Theorem M finitely generated graded monoid s ∈ KRat M ⇐ ⇒ ∃A ∈ KWA (M) s = | | |A| | |

slide-92
SLIDE 92

Fundamental theorem of finite automata

KRat A∗ K RatE A∗ KWA (A∗)

standard elimination

slide-93
SLIDE 93

Standard automaton E1 = ( 1

6 a∗ + 1 3 b∗)∗

slide-94
SLIDE 94

Standard automaton E1 = ( 1

6 a∗ + 1 3 b∗)∗

1 2 2 2

1 3 a 2 3 b 1 3 a 2 3 b 4 3 a 5 3 b

slide-95
SLIDE 95

Automata are matrices

◮ Automata are (essentially) matrices:

A = I, E, T

◮ Computing the behaviour of an automaton boils down

to solving a linear system X = E · X + T (s)

◮ Solving the linear system (s) amounts to invert

the matrix (Id − E) (hence the name rational)

◮ The inversion of Id − E is realised by

an infinite sum Id + E + E 2 + E 3 + · · · : the star of E

slide-96
SLIDE 96

Automata are matrices

p q b a b 2a 2b

C1

C1 = I1, E1, T1 =

  • 1
  • ,

a + b b 2a + 2b

  • ,

1

  • .
slide-97
SLIDE 97

Automata are matrices A = I, E, T E = incidence matrix

slide-98
SLIDE 98

Automata are matrices A = I, E, T E = incidence matrix Notation wl(x) = weighted label of x In our model, e transition ⇒ wl(e) = k a

slide-99
SLIDE 99

Automata are matrices A = I, E, T E = incidence matrix Notation wl(x) = weighted label of x In our model, e transition ⇒ wl(e) = k a Ep,q =

  • {wl(e)| e

transition from p to q}

slide-100
SLIDE 100

Automata are matrices A = I, E, T E = incidence matrix Notation wl(x) = weighted label of x In our model, e transition ⇒ wl(e) = k a Ep,q =

  • {wl(e)| e

transition from p to q} Lemma En

p,q =

  • {wl(c)| c

computation from p to q of length n}

slide-101
SLIDE 101

Automata are matrices A = I, E, T E = incidence matrix Ep,q =

  • {wl(e)| e

transition from p to q}

slide-102
SLIDE 102

Automata are matrices A = I, E, T E = incidence matrix Ep,q =

  • {wl(e)| e

transition from p to q} E ∗ =

  • n∈N

E n E ∗

p,q =

  • {wl(c)| c

computation from p to q}

slide-103
SLIDE 103

Automata are matrices A = I, E, T E = incidence matrix Ep,q =

  • {wl(e)| e

transition from p to q} E ∗ =

  • n∈N

E n E ∗

p,q =

  • {wl(c)| c

computation from p to q}

A = I · E ∗ · T

slide-104
SLIDE 104

Automata are matrices

K semiring M graded monoid

K M Q×

Q

is isomorphic to KQ×

Q

M

  • E ∈ K

M Q×

Q

E proper = ⇒ E ∗ defined

slide-105
SLIDE 105

Automata are matrices

K semiring M graded monoid

K M Q×

Q

is isomorphic to KQ×

Q

M

  • E ∈ K

M Q×

Q

E proper = ⇒ E ∗ defined Theorem The entries of E ∗ are in the rational closure of the entries of E

slide-106
SLIDE 106

Fundamental theorem of finite automata

K semiring M graded monoid

K M Q×

Q

is isomorphic to KQ×

Q

M

  • E ∈ K

M Q×

Q

E proper = ⇒ E ∗ defined Theorem The entries of E ∗ are in the rational closure of the entries of E Theorem The family of behaviours of weighted automata over M with coefficients in K is rationally closed.

slide-107
SLIDE 107

The collect theorem K A∗×B∗ is isomorphic to [K B∗ ] A∗

  • Theorem

Under the above isomorphism, KRat A∗×B∗ corresponds to [KRat B∗] Rat A∗

slide-108
SLIDE 108

Morphisms of automata

  • 1. Automata are structures.
slide-109
SLIDE 109

Morphisms of automata

  • 1. Automata are structures.

What are the morphisms for those structures?

slide-110
SLIDE 110

Morphisms of automata

  • 1. Automata are structures.

What are the morphisms for those structures?

  • 2. Automata realise series
slide-111
SLIDE 111

Morphisms of automata

  • 1. Automata are structures.

What are the morphisms for those structures?

  • 2. Automata realise series

Can we find an equivalent smaller automaton?

slide-112
SLIDE 112

Morphisms of automata

  • 1. Automata are structures.

What are the morphisms for those structures?

  • 2. Automata realise series

Can we find an equivalent smaller automaton?

  • f minimal size?
slide-113
SLIDE 113

Morphisms of automata

  • 1. Automata are structures.

What are the morphisms for those structures?

  • 2. Automata realise series

Can we find an equivalent smaller automaton?

  • f minimal size?

that respects the structure?

slide-114
SLIDE 114

Morphisms of Boolean automata

Minimisation of deterministic automata a b a b b a b a a b b a b a

slide-115
SLIDE 115

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

slide-116
SLIDE 116

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

◮ The image of a path is a path

slide-117
SLIDE 117

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

◮ The image of a path is a path ◮ The image of a successful path is a successful path

slide-118
SLIDE 118

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

◮ The image of a path is a path ◮ The image of a successful path is a successful path ◮ The label of the image of a path is the label of the path

slide-119
SLIDE 119

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

◮ The image of a path is a path ◮ The image of a successful path is a successful path ◮ The label of the image of a path is the label of the path

A ⊆ B

slide-120
SLIDE 120

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

Problem:

Find conditions such that

A = B

slide-121
SLIDE 121

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

Problem:

Find conditions such that

A = B

Solution:

Local conditions

slide-122
SLIDE 122

Morphisms of Boolean automata Definition

A = I, E, T and B = J, F, U B-automata

  • f dimension Q and R

A map ϕ: Q → R defines a morphism ϕ: A → B if (p, a, q) ∈ E = ⇒ (ϕ(p), a, ϕ(q)) ∈ F

Problem:

Find conditions such that

A = B

Solution:

Local conditions

Problem:

Neither the definition, nor the solution, extend directly to B-automata

slide-123
SLIDE 123

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U

slide-124
SLIDE 124

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

slide-125
SLIDE 125

Conjugacy of automata

X1 =     1 −1 1 1 1 1     . a −2a b 2b

A1

−a b −a b a b a b

B1

A1

X1

= ⇒ B1

slide-126
SLIDE 126

Conjugacy of automata

A′

1z 2z

  1 1 2  

⇐ = C′

2 1z 1z 2z

C′ =

  • 1

,   z z 2z  ,   1 2  

  • A′ =
  • 1

, z 2z

  • ,

1

  • 1

·   1 1 2   =

  • 1

,   z z 2z   ·   1 1 2   =   1 1 2   · z 2z

  • ,

  1 2   =   1 1 2   · 1

slide-127
SLIDE 127

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

slide-128
SLIDE 128

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

slide-129
SLIDE 129

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

  • A

X

= ⇒ B implies that A and B are equivalent.

slide-130
SLIDE 130

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

  • A

X

= ⇒ B implies that A and B are equivalent. I E E T

slide-131
SLIDE 131

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

  • A

X

= ⇒ B implies that A and B are equivalent. I E E T = I E E X U

slide-132
SLIDE 132

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

  • A

X

= ⇒ B implies that A and B are equivalent. I E E T = I E E X U = I E X F U

slide-133
SLIDE 133

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

  • A

X

= ⇒ B implies that A and B are equivalent. I E E T = I E E X U = I E X F U = I X F F U

slide-134
SLIDE 134

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

  • A

X

= ⇒ B implies that A and B are equivalent. I E E T = I E E X U = I E X F U = I X F F U = J F F U

slide-135
SLIDE 135

Conjugacy of automata Definition

Let A = I, E, T and B = J, F, U be two K-automata. A is conjugate to B if ∃X K-matrix I X = J, E X = X F, and T = X U This is denoted as A

X

= ⇒ B .

  • Conjugacy is a preorder

(transitive and reflexive, but not symmetric).

  • A

X

= ⇒ B implies that A and B are equivalent. I E E T = I E E X U = I E X F U = I X F F U = J F F U and then I E ∗ T = J F ∗ U

slide-136
SLIDE 136

Morphisms of weighted automata Definition

A map ϕ: Q → R defines a (Q×R)-amalgamation matrix Hϕ ϕ2 : {j, r, s, u} → {i, q, t} defines Hϕ2 =

    1 1 1 1    

slide-137
SLIDE 137

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an Out-morphism ϕ: A → B if A is conjugate to B by the matrix Hϕ : A

= ⇒ B I Hϕ = J, E Hϕ = Hϕ F, T = Hϕ U B is a quotient of A

slide-138
SLIDE 138

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an Out-morphism ϕ: A → B if A is conjugate to B by the matrix Hϕ : A

= ⇒ B I Hϕ = J, E Hϕ = Hϕ F, T = Hϕ U B is a quotient of A

Directed notion

slide-139
SLIDE 139

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an Out-morphism ϕ: A → B if A is conjugate to B by the matrix Hϕ : A

= ⇒ B I Hϕ = J, E Hϕ = Hϕ F, T = Hϕ U B is a quotient of A

Directed notion Price to pay for the weight

slide-140
SLIDE 140

Morphisms of weighted automata

j r s u

C2

b a b 2a 2b 2b 2a 2b 4a 4b b 2b b

slide-141
SLIDE 141

Morphisms of weighted automata

ϕ2 : {j, r, s, u} → {i, q, t} j r s u

C2

b a b 2a 2b 2b 2a 2b 4a 4b b 2b b

Hϕ2 =

    1 1 1 1    

slide-142
SLIDE 142

Morphisms of weighted automata

ϕ2 : {j, r, s, u} → {i, q, t} j r s u

C2

b a b 2a 2b 2b 2a 2b 4a 4b b 2b b

Hϕ2 =

    1 1 1 1    

i q t

V2

2b 2b b a b 2a 2b 4a 4b

C2

Hϕ2

= ⇒ V2

slide-143
SLIDE 143

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an Out-morphism ϕ: A → B if A is conjugate to B by the matrix Hϕ : A

= ⇒ B I Hϕ = J, E Hϕ = Hϕ F, T = Hϕ U B is a quotient of A

Directed notion Price to pay for the weight

slide-144
SLIDE 144

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an In-morphism ϕ: A → B if A is conjugate to B by the matrix Hϕ : A

= ⇒ B I Hϕ = J, E Hϕ = Hϕ F, T = Hϕ U B is a quotient of A

Directed notion Price to pay for the weight

slide-145
SLIDE 145

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an In-morphism ϕ: A → B if B is conjugate to A by the matrix

tHϕ :

B

tHϕ

= ⇒ A J tHϕ = I, F tHϕ = tHϕ E, U = tHϕ T B is a co-quotient of A

Directed notion Price to pay for the weight

slide-146
SLIDE 146

Morphisms of weighted automata

ϕ2 : {j, r, s, u} → {i, q, t} j r s u

C2

b a b 2a 2b 2b 2a 2b 4a 4b b 2b b

Hϕ2 =

    1 1 1 1    

i q t

V′

2

b 4b b a b 2a 2b 4a 4b

V′

2

tHϕ2

= ⇒ C2

slide-147
SLIDE 147

Morphisms of weighted automata

ϕ2 : {j, r, s, u} → {i, q, t} j r s u

C2

b a b 2a 2b 2b 2a 2b 4a 4b b 2b b

Hϕ2 =

    1 1 1 1    

i q t

V2

2b 2b b a b 2a 2b 4a 4b

i q t

V′

2

b 4b b a b 2a 2b 4a 4b

C2

Hϕ2

= ⇒ V2 V′

2

tHϕ2

= ⇒ C2

slide-148
SLIDE 148

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an Out-morphism ϕ: A → B if A is conjugate to B by the matrix Hϕ : A

= ⇒ B B is a quotient of A

slide-149
SLIDE 149

Morphisms of weighted automata Definition

A = I, E, T and B = J, F, U K-automata

  • f dimension Q and R.

A map ϕ: Q → R defines an Out-morphism ϕ: A → B if A is conjugate to B by the matrix Hϕ : A

= ⇒ B B is a quotient of A

Theorem Every K-automaton has a minimal quotient that is effectively computable (by Moore algorithm).

slide-150
SLIDE 150

Morphisms of weighted automata A practical look at conjugacy by Hϕ I Hϕ = J, E Hϕ = Hϕ F, and T = Hϕ U

slide-151
SLIDE 151

Morphisms of weighted automata A practical look at conjugacy by Hϕ I Hϕ = J, E Hϕ = Hϕ F, and T = Hϕ U

◮ Multiplying E by Hϕ on the right amounts to add columns

slide-152
SLIDE 152

Morphisms of weighted automata A practical look at conjugacy by Hϕ I Hϕ = J, E Hϕ = Hϕ F, and T = Hϕ U

◮ Multiplying E by Hϕ on the right amounts to add columns ◮ Multiplying F by Hϕ on the left amounts to duplicate lines

slide-153
SLIDE 153

Morphisms of weighted automata A practical look at conjugacy by Hϕ I Hϕ = J, E Hϕ = Hϕ F, and T = Hϕ U

◮ Multiplying E by Hϕ on the right amounts to add columns ◮ Multiplying F by Hϕ on the left amounts to duplicate lines ◮ Merging states p and q realises an Out-morphism if

adding columns p and q in E yields a matrix whose lines p and q are equal

slide-154
SLIDE 154

Morphisms of weighted automata A practical look at conjugacy by Hϕ I Hϕ = J, E Hϕ = Hϕ F, and T = Hϕ U

◮ Multiplying E by Hϕ on the right amounts to add columns ◮ Multiplying F by Hϕ on the left amounts to duplicate lines ◮ Merging states p and q realises an Out-morphism if

adding columns p and q in E yields a matrix whose lines p and q are equal (and if Tp = Tq )

slide-155
SLIDE 155

Morphisms of weighted automata

    a + b b b b 2a + 2b 2b 2a + 2b 2b 4a + 4b            R2

  • R2
slide-156
SLIDE 156

Morphisms of weighted automata

    a + b b b b 2a + 2b 2b 2a + 2b 2b 4a + 4b            R2

  • R2

    a + b 2b b 2a + 2b 2b 2a + 2b 2b 4a + 4b            R2

  • Q2
slide-157
SLIDE 157

Morphisms of weighted automata

    a + b b b b 2a + 2b 2b 2a + 2b 2b 4a + 4b            R2

  • R2

  a + b 2b b 2a + 2b 2b 4a + 4b      Q2

  • Q2
slide-158
SLIDE 158

Part III Recognisability