c ategorical a utomata l earning f ramework
play

C ategorical A utomata L earning F ramework calf-project.org Gerco - PowerPoint PPT Presentation

C ategorical A utomata L earning F ramework calf-project.org Gerco van Heerdt Matteo Sammartino Alexandra Silva LiVe @ ETAPS 2017 Our team Alexandra Silva Joshua Moerman Maverick Chardet Matteo Sammartino Gerco van Heerdt UCL UCL UCL


  1. C ategorical A utomata L earning F ramework calf-project.org Gerco van Heerdt Matteo Sammartino Alexandra Silva LiVe @ ETAPS 2017

  2. Our team Alexandra Silva Joshua Moerman Maverick Chardet Matteo Sammartino Gerco van Heerdt UCL UCL UCL Radboud University ENS Lyon Collaborators: Bartek Klin Michal Szynwelski Warsaw University Warsaw University

  3. Automata learning queries System Learner black-box answers S automaton builds model of S

  4. Automata learning queries System Learner black-box answers S automaton builds model of S No formal specification available? Learn it!

  5. L* algorithm (D.Angluin ’87) Finite alphabet of system’s actions A L ⊆ A � set of system behaviors is a regular language

  6. L* algorithm (D.Angluin ’87) Finite alphabet of system’s actions A L ⊆ A � set of system behaviors is a regular language Teacher Learner L

  7. L* algorithm (D.Angluin ’87) Finite alphabet of system’s actions A L ⊆ A � set of system behaviors is a regular language Q: w ∈ L ? A: Y/N Teacher Learner L

  8. L* algorithm (D.Angluin ’87) Finite alphabet of system’s actions A L ⊆ A � set of system behaviors is a regular language Q: w ∈ L ? A: Y/N L ( H ) = L ? Teacher Q: Learner A: Y / N + counterexample L H H = hypothesis automaton

  9. L* algorithm (D.Angluin ’87) Finite alphabet of system’s actions A L ⊆ A � set of system behaviors is a regular language Q: w ∈ L ? A: Y/N L ( H ) = L ? Teacher Q: Learner A: Y / N + counterexample L H H = hypothesis automaton builds Minimal DFA L accepting L

  10. A zoo of automata Weighted Probabilistic Alternating Universal Register Non-deterministic Mealy Machines

  11. A zoo of automata Weighted Probabilistic Alternating Universal Register Non-deterministic Mealy Machines Algorithms Correctness proofs involved and hard to check

  12. A zoo of automata Weighted Probabilistic Alternating Universal Register Non-deterministic Mealy Machines Category theory comes to the rescue! Algorithms Correctness proofs involved and hard to check

  13. Abstract automata C Category = universe of state-spaces F : C → C Endofunctor = automaton type FQ ” Q init Q Q Q out Q I Y DFAs

  14. Abstract automata C Category = universe of state-spaces F : C → C Endofunctor = automaton type FQ DFAs ” Q C = Set init Q Q Q out Q F = ( − ) × A I Y DFAs

  15. Abstract automata C Category = universe of state-spaces F : C → C Endofunctor = automaton type FQ Q × A DFAs ” Q C = Set init Q Q Q out Q F = ( − ) × A I Y DFAs

  16. Abstract automata C Category = universe of state-spaces F : C → C Endofunctor = automaton type FQ Q × A DFAs ” Q C = Set init Q Q Q out Q F = ( − ) × A 1 I Y DFAs

  17. Abstract automata C Category = universe of state-spaces F : C → C Endofunctor = automaton type FQ Q × A DFAs ” Q C = Set init Q Q Q out Q F = ( − ) × A 1 I Y q 0 ∈ Q DFAs

  18. Abstract automata C Category = universe of state-spaces F : C → C Endofunctor = automaton type FQ Q × A DFAs ” Q C = Set init Q Q Q out Q F = ( − ) × A 1 2 I Y q 0 ∈ Q DFAs

  19. Abstract automata C Category = universe of state-spaces F : C → C Endofunctor = automaton type FQ Q × A DFAs ” Q C = Set init Q Q Q out Q F = ( − ) × A 1 2 I Y F ⊆ Q q 0 ∈ Q DFAs

  20. Abstract learning Abstract observation data structure

  21. Abstract learning Target minimal automaton approximates Abstract observation data FQ structure ” Q init Q Q Q out Q I Y

  22. Abstract learning Target minimal automaton approximates Abstract observation data FQ structure ” Q init Q Q Q out Q abstract closedness I Y and consistency Hypothesis automaton FH ” H H out H init H I Y

  23. Abstract learning Target minimal automaton approximates Abstract observation data FQ structure ” Q init Q Q Q out Q abstract closedness I Y and consistency = Hypothesis automaton General correctness theorem FH ” H Guidelines for implementation H out H init H I Y

  24. Abstract learning Target minimal automaton approximates Abstract observation data FQ structure ” Q init Q Q Q out Q abstract closedness I Y and consistency = Hypothesis automaton General correctness theorem FH ” H Guidelines for implementation H out H init H I Y (arXiv:1704.05676) CALF: Categorical Automata Learning Framework Gerco van Heerdt, Matteo Sammartino, Alexandra Silva

  25. Other automata & optimizations

  26. Other automata & optimizations Change base category DFAs Set Nom Nominal automata Vect Weighted automata

  27. Other automata & optimizations Change base category DFAs Set Nom Nominal automata Vect Weighted automata Side-effects (via monads) Powerset NFAs Powerset with intersection Universal automata Double powerset Alternating automata Partial automata Maybe monad

  28. Other automata & optimizations Change base category Change main data structure DFAs Set Observation tables Nom Nominal automata Discrimination trees Vect Weighted automata Side-effects (via monads) Powerset NFAs Powerset with intersection Universal automata Double powerset Alternating automata Partial automata Maybe monad

  29. Other automata & optimizations Change base category Change main data structure Learning Nominal Automata (POPL ’17) DFAs Set Joshua Moerman, Matteo Sammartino, Alexandra Silva, Bartek Klin, Michal Szynwelski Observation tables Nom Nominal automata Discrimination trees Vect Weighted automata Side-effects (via monads) Powerset NFAs Powerset with intersection Universal automata Double powerset Alternating automata Partial automata Maybe monad

  30. Other automata & optimizations Change base category Change main data structure Learning Nominal Automata (POPL ’17) DFAs Set Joshua Moerman, Matteo Sammartino, Alexandra Silva, Bartek Klin, Michal Szynwelski Observation tables Nom Nominal automata Discrimination trees Vect Weighted automata Learning Automata with Side-effects (arXiv:1704.08055) Gerco van Heerdt, Matteo Sammartino, Alexandra Silva Side-effects (via monads) Powerset NFAs Powerset with intersection Universal automata Double powerset Alternating automata Partial automata Maybe monad

  31. Connections with other algorithms Automaton type Automata Learning algorithms Minimization Testing algorithms algorithms Optimizations

  32. Ongoing and future work • Library & tool to learn control + data-flow models (as nominal automata ) • Applications: • Specification mining • Network verification, with • Verification of cryptographic protocols • Ransomware detection

Recommend


More recommend