Nominal Automata Mikolaj Bojanczyk 1, Bartek Klin 12, Slawomir Lasota 1 1 Warsaw University 2 University of Cambridge Leicester, 04/03/11
Finite automata An automaton: - set Q of states - alphabet A - transition function δ : Q A Q - initial state q 0 Q - accepting states Q a Q Leicester, 04/03/11 2 / 17
Finite automata An automaton: - set Q of states - alphabet A - transition function δ : Q A Q - initial state q 0 Q - accepting states Q a Q 1 Q A Q δ α 2 ι Leicester, 04/03/11 2 / 17
Finite automata An automaton: - set Q of states - alphabet A finite - transition function δ : Q A Q - initial state q 0 Q - accepting states Q a Q 1 Q A Q δ α 2 ι Leicester, 04/03/11 2 / 17
Finite automata An automaton: - set Q of states - alphabet A? finite - transition function δ : Q A Q - initial state q 0 Q - accepting states Q a Q 1 Q A Q δ α 2 ι Leicester, 04/03/11 2 / 17
Finite memory automata [FK] A = N Idea: store numbers in configurations... Leicester, 04/03/11 3 / 17
Finite memory automata [FK] A = N Idea: store numbers in configurations...... but only compare them for equality Leicester, 04/03/11 3 / 17
Finite memory automata [FK] A = N - finite set Q of states Leicester, 04/03/11 3 / 17
Finite memory automata [FK] A = N - finite set Q of states - finite store R of registers Leicester, 04/03/11 3 / 17
Finite memory automata [FK] A = N - finite set Q of states - finite store R of registers configurations: X = Q (A + 1) R Leicester, 04/03/11 3 / 17
Finite memory automata [FK] A = N - finite set Q of states - finite store R of registers configurations: X = Q (A + 1) R - transition function δ : X A X - only checks letters for equality - new store old store { letter just read} Leicester, 04/03/11 3 / 17
Finite memory automata [FK] A = N - finite set Q of states - finite store R of registers configurations: X = Q (A + 1) R - transition function δ : X A X - only checks letters for equality - new store old store { letter just read} - initial state, accepting states Leicester, 04/03/11 3 / 17
Example The first letter appears again L = {a 1 a 2... a n N k >1. a 1 = a k } Leicester, 04/03/11 4 / 17
Example The first letter appears again L = {a 1 a 2... a n N k >1. a 1 = a k } b a a a ( ) (a) ( ) Leicester, 04/03/11 4 / 17
Example The first letter appears again L = {a 1 a 2... a n N k >1. a 1 = a k } b a initial a a ( ) (a) ( ) accepting Leicester, 04/03/11 4 / 17
Example The first letter appears again L = {a 1 a 2... a n N k >1. a 1 = a k } b a initial a a ( ) (a) ( ) accepting The last letter appears before L = {a 1 a 2... a n N k < n. a k = a n } Leicester, 04/03/11 4 / 17
Example The first letter appears again L = {a 1 a 2... a n N k >1. a 1 = a k } b a initial a a ( ) (a) ( ) accepting The last letter appears before L = {a 1 a 2... a n N k < n. a k = a n } not recognizable Leicester, 04/03/11 4 / 17
Finite memory automata [FK] - finite set Q of states - finite store R of registers configurations: X = Q (A + 1) R - transition function δ : X A X - only checks letters for equality - new store old store { letter just read} - initial state, accepting states Leicester, 04/03/11 5 / 17
Finite memory automata [FK] - finite set Q of states - finite store R of registers configurations: X = Q (A + 1) R - transition function δ : X A X - only checks letters for equality - new store old store { letter just read} - initial state, accepting states 1 X A X δ α 2 ι Leicester, 04/03/11 5 / 17
Syntactic automata Myhill-Nerode equivalence: L A v L w u A. (vu L wu L) Leicester, 04/03/11 6 / 17
Syntactic automata Myhill-Nerode equivalence: L A v L w u A. (vu L wu L) Fact: v L w = vu L wu Leicester, 04/03/11 6 / 17
Syntactic automata Myhill-Nerode equivalence: L A v L w u A. (vu L wu L) Fact: v L w = vu L wu 1 A / L A ι A / L α 2 Initial: [ɛ] L Accepting: {[w] L w L} Leicester, 04/03/11 6 / 17
Syntactic automata Myhill-Nerode equivalence: L A v L w u A. (vu L wu L) Fact: v L w = vu L wu 1 Syntactic ι automaton A / L A A / L α 2 Initial: [ɛ] L Accepting: {[w] L w L} Leicester, 04/03/11 6 / 17
Minimization problems for F.M.A. L = {abc a b, c {a, b}} A 3 Leicester, 04/03/11 7 / 17
Minimization problems for F.M.A. L = {abc a b, c {a, b}} A 3 (, ) a (a, ) a b a (, ) c {a,b} c {a,b} (, ) (a, b) Leicester, 04/03/11 7 / 17
Minimization problems for F.M.A. L = {abc a b, c {a, b}} A 3 (, ) a (a, ) a b a (, ) c {a,b} c {a,b} (, ) (, ) (, ) ab (a, b) ba (b, a) (a, b) Leicester, 04/03/11 7 / 17
Minimization problems for F.M.A. L = {abc a b, c {a, b}} A 3 (, ) a (a, ) a b a (, ) c {a,b} c {a,b} (, ) (, ) (, ) ab (a, b) ba (b, a) but ab L ba (a, b) Leicester, 04/03/11 7 / 17
Minimization problems for F.M.A. L = {abc a b, c {a, b}} A 3 (, ) a (a, ) a b a (, ) c {a,b} c {a,b} (, ) (, ) (, ) ab (a, b) ba (b, a) but ab L ba (a, b) Worse: for any G Sym({1, 2,..., n}), L = {a 1 a n b 1 b n π G. i =1..n. a i = b π(i) } Leicester, 04/03/11 7 / 17
F.M.A. are equivariant Fix G = Sym(A). Defn.: A G -set is: - a set X - an action : X G X (+ axioms) Defn.: Function f : X Y is equivariant if f(x π) =f(x) π Leicester, 04/03/11 8 / 17
F.M.A. are equivariant Fix G = Sym(A). Defn.: A G -set is: - a set X - an action : X G X (+ axioms) Defn.: Function f : X Y is equivariant if f(x π) =f(x) π category G-Set Leicester, 04/03/11 8 / 17
F.M.A. are equivariant Fix G = Sym(A). Defn.: A G -set is: - a set X - an action : X G X (+ axioms) Defn.: Function f : X Y is equivariant if f(x π) =f(x) π category G-Set Fact: In a F.M.A.: - configurations form a G-set - is equivariant δ : X A X Leicester, 04/03/11 8 / 17
G-set automata Idea: study diagrams 1 X A X δ α 2 ι in G-Set. Leicester, 04/03/11 9 / 17
G-set automata Idea: study diagrams 1 finite? X A X δ α 2 ι in G-Set. Leicester, 04/03/11 9 / 17
G-set automata Idea: study diagrams 1 finite? X A X δ α 2 ι in G-Set. Defn.: The orbit of x X : x G = {x π π G} Leicester, 04/03/11 9 / 17
G-set automata Idea: study diagrams 1 finite? X A X δ α 2 ι in G-Set. Defn.: The orbit of x X : x G = {x π π G} In an F.M.A., Q = orbits(x) Leicester, 04/03/11 9 / 17
G-set automata Idea: study diagrams 1 finite? X A X δ α 2 ι in G-Set. Defn.: The orbit of x X : x G = {x π π G} In an F.M.A., Q = orbits(x) So we require X orbit-finite. Leicester, 04/03/11 9 / 17
G-set automata Idea: study diagrams 1 finite? X A X δ α 2 ι in G-Set. Defn.: The orbit of x X : x G = {x π π G} In an F.M.A., Q = orbits(x) So we require X orbit-finite. Can we model finiteness of the store? Leicester, 04/03/11 9 / 17
Nominal sets [GP] Defn.: C A supports x X if c C. π(c) =c = x π = x Leicester, 04/03/11 10 / 17
Nominal sets [GP] Defn.: C A supports x X if c C. π(c) =c = x π = x Nominal set: every element has a finite support. Leicester, 04/03/11 10 / 17
Nominal sets [GP] Defn.: C A supports x X if c C. π(c) =c = x π = x Nominal set: every element has a finite support. G-Nom: nominal sets and equivariant functions Leicester, 04/03/11 10 / 17
Nominal sets [GP] Defn.: C A supports x X if c C. π(c) =c = x π = x Nominal set: every element has a finite support. G-Nom: nominal sets and equivariant functions Fact: In a nominal set, every x has the least support Leicester, 04/03/11 10 / 17
Nominal sets [GP] Defn.: C A supports x X if c C. π(c) =c = x π = x Nominal set: every element has a finite support. G-Nom: nominal sets and equivariant functions Fact: In a nominal set, every x has the least support supp(x) = { a A {b A x (ab) x} is infinite } Leicester, 04/03/11 10 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom Leicester, 04/03/11 11 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom - finite set Q of states Leicester, 04/03/11 11 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom - finite set Q of states - for each state: finite set R q, group S q Sym(R q ) Leicester, 04/03/11 11 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom - finite set Q of states - for each state: finite set R q, group S q Sym(R q ) - transition: θ : q Q (R q + 1) p Q ((R q + 1) R p ) Leicester, 04/03/11 11 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom - finite set Q of states - for each state: finite set R q, group S q Sym(R q ) - transition: θ : q Q (R q + 1) p Q ((R q + 1) R p ) + a condition involving S q,s p Leicester, 04/03/11 11 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom - finite set Q of states - for each state: finite set R q, group S q Sym(R q ) - transition: θ : q Q (R q + 1) p Q ((R q + 1) R p ) - initial, accepting states + a condition involving S q,s p Leicester, 04/03/11 11 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom X = q Q (AR q up to S q ) - finite set Q of states - for each state: finite set R q, group S q Sym(R q ) - transition: θ : q Q (R q + 1) p Q ((R q + 1) R p ) - initial, accepting states + a condition involving S q,s p Leicester, 04/03/11 11 / 17
Nominal automata 1 X A δ X α 2 ι G-Nom Q = orbits(x) - finite set Q of states R q = supp(x) S q = G x (x q) - for each state: finite set R q, group S q Sym(R q ) - transition: θ : q Q (R q + 1) p Q ((R q + 1) R p ) - initial, accepting states + a condition involving S q,s p Leicester, 04/03/11 11 / 17
Structured alphabets Leicester, 04/03/11 12 / 17
Structured alphabets Q: What if the alphabet is equipped with - a total order, - a partial order, - a graph structure, -... which we can check for? Leicester, 04/03/11 12 / 17
Structured alphabets Q: What if the alphabet is equipped with - a total order, - a partial order, - a graph structure, -... which we can check for? A: Repeat the theory with some G Sym(A) E.g. G = monotone bijections of Q Leicester, 04/03/11 12 / 17
G -nominal sets Defn.: C A supports x X π G ( c C. π(c) =c = x π = x ) if Nominal set: every element has a finite support. G-Nom: G-nominal sets and equivariant functions Leicester, 04/03/11 13 / 17
G -nominal sets Defn.: C A supports x X π G ( c C. π(c) =c = x π = x ) if Nominal set: every element has a finite support. G-Nom: G-nominal sets and equivariant functions Caution: least supports might not exist. Leicester, 04/03/11 13 / 17
Representing G -nominal sets Automaton: - orbit-finite G-set X -... Leicester, 04/03/11 14 / 17
Representing G -nominal sets Step 1: every G-set is a sum of single-orbit ones. Automaton: - orbit-finite G-set X -... Leicester, 04/03/11 14 / 17
Representing G -nominal sets Step 1: every G-set is a sum of single-orbit ones. Automaton: - finite set Q of states - for each state: single-orbit nominal set X q -... Leicester, 04/03/11 14 / 17
Representing G -nominal sets Step 1: every G-set is a sum of single-orbit ones. Step 2: for any single-orbit X, X = G/H r for some H G. Automaton: - finite set Q of states - for each state: single-orbit nominal set X q -... Leicester, 04/03/11 14 / 17
Representing G -nominal sets Step 1: every G-set is a sum of single-orbit ones. Step 2: for any single-orbit X, X = G/H r for some H G. Automaton: - finite set Q of states - for each state: group H q G -... Leicester, 04/03/11 14 / 17
Representing G -nominal sets Step 1: every G-set is a sum of single-orbit ones. Step 2: for any single-orbit X, X = G/H r for some H G. Step 3: X nominal iff H open: G C = {π G π C = id} H for some C fin A Automaton: - finite set Q of states - for each state: group H q G -... Leicester, 04/03/11 14 / 17
Representing G -nominal sets Step 1: every G-set is a sum of single-orbit ones. Step 2: for any single-orbit X, X = G/H r for some H G. Step 3: X nominal iff H open: G C = {π G π C = id} H for some C fin A Automaton: - finite set Q of states - for each state: open group H q G -... Leicester, 04/03/11 14 / 17
Representing G -nominal sets Step 1: every G-set is a sum of single-orbit ones. Step 2: for any single-orbit X, X = G/H r for some H G. Step 3: X nominal iff H open: G C = {π G π C = id} H for some C fin A Step 4:... Automaton: - finite set Q of states - for each state: -... open group H q G Leicester, 04/03/11 14 / 17
Fraïssé limits Idea: - N universally embeds finite sets - Q universally embeds finite total orders - universal partial order? graph? etc. Leicester, 04/03/11 15 / 17
Fraïssé limits Idea: - N universally embeds finite sets - Q universally embeds finite total orders - universal partial order? graph? etc. Fraïssé construction: a class of finite rel. structures closed under - isomorphisms - substructures - amalgamation has a countable limit U that embeds them. Leicester, 04/03/11 15 / 17
Fraïssé limits Idea: - N universally embeds finite sets - Q universally embeds finite total orders - universal partial order? graph? etc. Fraïssé construction: a class of finite rel. structures closed under - isomorphisms - substructures - amalgamation has a countable limit U that embeds them. We use G = Aut(U) Sym( U ) Leicester, 04/03/11 15 / 17
Fraïssé automata Fix a class K of relational structures (subject to conditions) Leicester, 04/03/11 16 / 17
Fraïssé automata Fix a class K of relational structures (subject to conditions) Automaton: - finite set Q of states fin. structure, - for each state: R q group S q Aut(R q ) Leicester, 04/03/11 16 / 17
Fraïssé automata Fix a class K of relational structures (subject to conditions) Automaton: - finite set Q of states fin. structure, - for each state: R q group S q Aut(R q ) configurations: embeddings of R q in U up to S q Leicester, 04/03/11 16 / 17
Fraïssé automata Fix a class K of relational structures (subject to conditions) Automaton: - finite set Q of states fin. structure, - for each state: R q group S q Aut(R q ) configurations: embeddings of R q in U up to S q - transition function:... - initial, accepting states Leicester, 04/03/11 16 / 17
More fun Leicester, 04/03/11 17 / 17
More fun In Fraïssé situations, we represent in a finite way: - G-nominal sets - subsets, products - equivariant functions and relations - 1 st -order logic is decidable on orbit-finite sets Leicester, 04/03/11 17 / 17
More fun In Fraïssé situations, we represent in a finite way: - G-nominal sets - subsets, products - equivariant functions and relations - 1 st -order logic is decidable on orbit-finite sets So we can represent: - automata - push-down automata - Turing machines -... Leicester, 04/03/11 17 / 17
More fun In Fraïssé situations, we represent in a finite way: - G-nominal sets - subsets, products - equivariant functions and relations - 1 st -order logic is decidable on orbit-finite sets So we can represent: - automata - push-down automata - Turing machines Is P = NP in nominal sets? -... Leicester, 04/03/11 17 / 17