Nominal Automata. Mikolaj Bojanczyk 1, Bartek Klin 12, Slawomir Lasota 1 1. University of Cambridge. Warsaw University 2. Leicester, 04/03/11

Similar documents
Automata with group actions

Automata extended to nominal sets

Names and Symmetry in Computer Science

What You Must Remember When Processing Data Words

16.1 Countability. CS125 Lecture 16 Fall 2014

Algebras with finite descriptions

Topology in Denotational Semantics

Decision Problems for Additive Regular Functions

CS 154 Introduction to Automata and Complexity Theory

Equivalence of TMs and Multitape TMs. Theorem 3.13 and Corollary 3.15 By: Joseph Lauman

Part I: Definitions and Properties

Introduction to Automata

DM17. Beregnelighed. Jacob Aae Mikkelsen

Completeness and Incompleteness in nominal Kleene algebra

MFPS LICS Special Session Honouring Dana Scott. Symmetric Scott. Andrew Pitts. Computer Laboratory MFPS/LICS /14

Introduction to Kleene Algebras

Büchi Automata and their closure properties. - Ajith S and Ankit Kumar

6.8 The Post Correspondence Problem

G i. h i f i G h f j. G j

Monoidal Categories, Bialgebras, and Automata

Notes on State Minimization

Obtaining the syntactic monoid via duality

Theory of Computation

Computability Theory for Neuroscience

The theory of regular cost functions.

Advanced Automata Theory 9 Automatic Structures in General

2. Elements of the Theory of Computation, Lewis and Papadimitrou,

Algebraic Approach to Automata Theory

On Recognizable Languages of Infinite Pictures

On Recognizable Languages of Infinite Pictures

Theory of Computation Lecture 1. Dr. Nahla Belal

Duality in Logic. Duality in Logic. Lecture 2. Mai Gehrke. Université Paris 7 and CNRS. {ε} A ((ab) (ba) ) (ab) + (ba) +

On the use of guards for logics with data

3515ICT: Theory of Computation. Regular languages

Chapter 1. Automata over infinite alphabets

Variable Automata over Infinite Alphabets

Languages, logics and automata

Quasitriangular structures on (dual) monoid rings

Computability and Complexity

Homework 2 /Solutions

Homogeneous structures

Computation Histories

CSE 105 THEORY OF COMPUTATION. Spring 2018 review class

Tree Automata and Rewriting

The Pumping Lemma. for all n 0, u 1 v n u 2 L (i.e. u 1 u 2 L, u 1 vu 2 L [but we knew that anyway], u 1 vvu 2 L, u 1 vvvu 2 L, etc.

Non-emptiness Testing for TMs

A Succinct Canonical Register Automaton Model

HKN CS/ECE 374 Midterm 1 Review. Nathan Bleier and Mahir Morshed

Lecture three: Automata and the algebra-coalgebra duality

COMP/MATH 300 Topics for Spring 2017 June 5, Review and Regular Languages

INSTITUTE OF MATHEMATICS THE CZECH ACADEMY OF SCIENCES. Katětov functors. Wiesław Kubiś Dragan Mašulović

INF210 Datamaskinteori (Models of Computation)

Computational Models - Lecture 4

Equational Theory of Kleene Algebra

Automata Theory (2A) Young Won Lim 5/31/18

THEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET

5 Context-Free Languages

Büchi Automata and Linear Temporal Logic

Undecidability. Andreas Klappenecker. [based on slides by Prof. Welch]

Infinite and Finite Model Theory Part II

Universal words and sequences

ACS2: Decidability Decidability

Duality and Automata Theory

Aperiodic languages p. 1/34. Aperiodic languages. Verimag, Grenoble

Counter Automata and Classical Logics for Data Words

(9-5) Def Turing machine, Turing computable functions. (9-7) Def Primitive recursive functions, Primitive recursive implies Turing computable.

Recognisable Languages over Monads

CSCI 2200 Foundations of Computer Science Spring 2018 Quiz 3 (May 2, 2018) SOLUTIONS

Finite-State Machines (Automata) lecture 12

Overlapping tile automata:

On the use of guards for logics with data

Nominal Syntax and Semantics

Nominal sets and automata: Representation theory and computations

FINITE MEMORY DETERMINACY

CSE 105 THEORY OF COMPUTATION

Sanjit A. Seshia EECS, UC Berkeley

Lecture 2: Connecting the Three Models

Warshall s algorithm

Posets, homomorphisms, and homogeneity

Automata and minimization 1

Introduction to Model Theory

Where does it come from?

About the relationship between formal logic and complexity classes

Finite and Algorithmic Model Theory II: Automata-Based Methods

1 Functions, relations, and infinite cardinality

Theory of Computation

On the coinductive nature of centralizers

Griffith University 3130CIT Theory of Computation (Based on slides by Harald Søndergaard of The University of Melbourne) Turing Machines 9-0

The enumeration degrees: Local and global structural interactions

Homogeneous structures with non-universal automorphism groups

C6.2 Push-Down Automata

Definition of Büchi Automata

Decidability: Church-Turing Thesis

Completely regular Bishop spaces

Universal sequences for groups and semigroups

CHURCH SYNTHESIS PROBLEM and GAMES

2. Syntactic Congruences and Monoids

On the Accepting Power of 2-Tape Büchi Automata

Injection structures specified by finite state transducers

Theory of Computation

Transcription:

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