calf categorical automata learning framework
play

CALF: Categorical Automata Learning Framework Matteo Sammartino - PowerPoint PPT Presentation

CALF: Categorical Automata Learning Framework Matteo Sammartino Alexandra Silva Gerco van Heerdt May 23, 2017 1 / 61 Active automata learning Active automata learning algorithms learn an automaton describing the behaviour of a system by


  1. CALF: Categorical Automata Learning Framework Matteo Sammartino Alexandra Silva Gerco van Heerdt May 23, 2017 1 / 61

  2. Active automata learning ◮ Active automata learning algorithms learn an automaton describing the behaviour of a system by providing inputs and observing outputs ◮ Enables verification methods that work on an automaton ◮ Allows comparison of different implementations of e.g. a network protocol Capturing systems more precisely requires more complex types of automata and more complicated learning algorithms Idea: understanding the main concepts on an abstract level helps developing and reasoning about new algorithms 2 / 61

  3. CALF Our Categorical Automata Learning Framework ◮ Gives an abstract view on the ingredients and constructions of learning algorithms, leading to new adaptations ◮ Covers also minimisation and equivalence testing ◮ Allows transferring optimisations among these areas other automata optimisations types Automata Learning 1 2 Testing Minimisation 3 3 / 61

  4. Active learning of DFAs: the basic setting ◮ Finite alphabet set A ◮ Target regular language L : A ∗ → 2 = { 0 , 1 } ◮ Oracle that can tell whether a given word is in L ( membership queries ) Aim is to learn a DFA accepting L , in particular the minimal one A simple data structure used to conjecture a DFA is the observation table 4 / 61

  5. Observation table Given S , E ⊆ A ∗ , define row t : S → 2 E row t ( s )( e ) = L ( se ) row b : S · A → 2 E row b ( sa )( e ) = L ( sae ) E ε a aa � ε 0 0 1 S � a 0 1 0 S · A b 0 0 0 S and E evolve throughout runs of learning algorithms 5 / 61

  6. Hypothesis Given an observation table defined by S , E ⊆ A ∗ , the hypothesis DFA is given by H = { row t ( s ) | s ∈ S } ⊆ 2 E init ∈ H init = row t ( ε ) δ : H × A → H δ (row t ( s ) , a ) = row b ( sa ) out: H → 2 out(row t ( s )) = row t ( s )( ε ) provided that ε ∈ S ∩ E and two properties hold 6 / 61

  7. Closedness and consistency ◮ Closedness states that each transition leads to a state of the hypothesis. The table is closed if for all t ∈ S · A there is s ∈ S such that row t ( s ) = row b ( t ) ◮ Consistency states that there is no ambiguity in determining transitions. The table is consistent if for all s 1 , s 2 ∈ S with row t ( s 1 ) = row t ( s 2 ) we have, for any a ∈ A , row b ( s 1 a ) = row b ( s 2 a ) 7 / 61

  8. Closedness The table is closed if for all t ∈ S · A there is s ∈ S such that row t ( s ) = row b ( t ) ε 1 ε 0 a If no such s exists, add the word t to S ε 1 ε a 0 aa 1 8 / 61

  9. Consistency The table is consistent if for all s 1 , s 2 ∈ S with row t ( s 1 ) = row t ( s 2 ) we have, for any a ∈ A , row b ( s 1 a ) = row b ( s 2 a ) ε ε 1 1 a 0 aa If row b ( s 1 a )( e ) � = row b ( s 2 a )( e ), add ae to E to distinguish row t ( s 1 ) and row t ( s 2 ) ε a ε ε 1 1 a 1 0 aa 0 0 9 / 61

  10. � � � Hypothesis construction ◮ State space: distinct top rows (image of row t ) ◮ Initial state: ε row ◮ Output: taken from ε column ◮ Transitions: appending symbols to row labels ε a a ε 0 1 0 1 1 0 1 0 a a aa 0 1 10 / 61

  11. ID algorithm Assume a given set S ⊆ A ∗ such that for every state of the minimal DFA accepting L there is a word in S reaching that state Closedness will automatically hold 1. Initialise E = { ε } 2. Enforce consistency 3. Construct the hypothesis The hypothesis will be isomorphic to the minimal DFA 11 / 61

  12. ⋆ algorithm L Assume an oracle that can tell whether a hypothesis accepts the right language, and if not provides a counterexample word ( equivalence queries ) 1. Enforce closedness and consistency 2. Construct the hypothesis 3. Ask the oracle if the hypothesis is correct 4. If not, add all prefixes of the counterexample to S and restart The hypothesis will be correct after finitely many iterations, and it will be isomorphic to the minimal DFA 12 / 61

  13. DA of words Given the language L : A ∗ → 2, we have a DA accepting L : ◮ State space: A ∗ ◮ Initial state: ε ∈ A ∗ ◮ Output: L : A ∗ → 2 ◮ Transitions: c : A ∗ × A → A ∗ c ( u , a ) = ua 13 / 61

  14. Reachability map If Q is a DA accepting L , there is a unique DA homomorphism r : A ∗ → Q given by r ( ε ) = init Q r ( ua ) = δ Q ( r ( u ) , a ) called the reachability map , which assigns to each word the state it reaches in Q Q is reachable if r is surjective: every state is reached by a word 14 / 61

  15. DA of languages Given the language L : A ∗ → 2, we have a DA accepting L : ◮ State space: 2 A ∗ ◮ Initial state: L ∈ 2 A ∗ ◮ Output: ε ?: 2 A ∗ → 2 ε ?( l ) = l ( ε ) ◮ Transitions: ∂ : 2 A ∗ × A → 2 A ∗ ∂ ( l , a )( v ) = l ( av ) e.g. ∂ ( { a , ba , abb } , a ) = { ε, bb } 15 / 61

  16. Observability map If Q is a DA accepting L , there is a unique DA homomorphism o : Q → 2 A ∗ given by o ( q )( ε ) = out Q ( q ) o ( q )( av ) = o ( δ Q ( q , a ))( v ) called the observability map , which assigns to each state the language it accepts The DA Q is observable if o is injective: different states accept different languages A DA is minimal if it is both reachable and observable 16 / 61

  17. Total response The language L : A ∗ → 2 induces DAs A ∗ and 2 A ∗ accepting L The reachability map of 2 A ∗ coincides with the observability map of A ∗ in the DA homomorphism called the total response of L : t L : A ∗ → 2 A ∗ t L ( u )( v ) = L ( uv ) → Q o r → 2 A ∗ If Q is any DA accepting L , then t L = A ∗ − − 17 / 61

  18. � � � Function factorisation Every function can be written as a surjection followed by an injection: f B C e ( b ) = f ( b ) e � � m m ( c ) = c im( f ) 18 / 61

  19. � � � Factorisation uniqueness In a commutative square of functions as on the left, i � � i � � U V U V d g � g � h h j j � X � X W � W � where i is surjective and j injective, there is a unique diagonal d making the triangles commute: d ( i ( u )) = g ( u ) 19 / 61

  20. � � � DA homomorphism factorisation In an image factorisation f B C � m e � � im( f ) if f is a DA homomorphism, then so are e and m , given this DA structure on im( f ): ◮ Initial state: initial state of C ◮ Output: output of C ◮ Transitions: the unique diagonal e × id A � � m × id A � B × A im( f ) × A C × A δ im( f ) � δ B � δ C e m � im( f ) � � C B 20 / 61

  21. � � � � � � Minimal DA The minimal DA accepting L : A ∗ → 2 can be obtained in theory by factorising the total response t L : t L 2 A ∗ A ∗ e m � � M Since e and m are DA homomorphisms, we must have e = r M and m = o M by the uniqueness properties t L 2 A ∗ A ∗ r o � � M 21 / 61

  22. � � � � Minimisation Similarly, the reachable part of a DA Q is obtained by factorising its reachability map: r A ∗ Q r � � R � Equivalent states are merged by factorising the observability map: o 2 A ∗ Q o � � O � 22 / 61

  23. � � � The hypothesis approximates the minimal DA t L 2 A ∗ A ∗ r o � � M Concretely, the minimal DA is given by M = { t L ( u ) | u ∈ A ∗ } init ∈ M init = t L ( ε ) δ : M × A → M δ ( t L ( u ) , a ) = t L ( ua ) out: M → 2 out( t L ( u )) = t L ( u )( ε ) This is equivalent to the hypothesis for S = E = A ∗ 23 / 61

  24. � � � Abstract automaton Given a category C , objects I and O in C , and a functor F : C → C , an automaton is an object Q in C with three morphisms: FQ δ Q init out I O 24 / 61

  25. � � � � DAs as automata For DAs: ◮ A singleton 1 serves as the initial state selector ◮ The set 2 = { 0 , 1 } captures rejection (0) and acception (1) ◮ The functor ( − ) × A provides the transition domain FQ Q × A δ δ Q Q init � out init � out 1 2 I O 25 / 61

  26. � � � � � � � � � � Reachability and observability maps Assume an initial object @ among automata without output and a final object Ω among automata without initial state: Fr Fo F @ FQ F Ω δ r � Q o @ Ω init out I O Languages can be defined as morphisms I → Ω or @ → O , which correspond bijectively to each other through the total response The total response may be defined as the reachability map of Ω or as the observability map of @ 26 / 61

  27. Factorisation system We assume two classes of C -morphisms: ◮ “surjective” morphisms E and ◮ “injective” morphisms M such that ◮ every C -morphism f : A → B can be factored as f = m ◦ e , with e ∈ E and m ∈ M ; ◮ E and M are closed under composition and contain all isos; ◮ everything in E is an epi, and everything in M is a mono; and ◮ we have the unique diagonal property that does not fit on this slide but is the same as before Lifts to the category of automata if F preserves E 27 / 61

  28. 28 / 61

  29. � � Approximating an object A wrapper for an object T is a pair of morphisms σ π w = ( S − → T , T − → P ) ◮ T is called the target of w ◮ σ selects from T ◮ π classifies T The (unstructured) hypothesis H is the image of ξ = π ◦ σ : σ π � P S T e m � � H � 29 / 61

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend