Authors: Frohme, Markus
Steffen, Bernhard
Title: Compositional learning of mutually recursive procedural systems
Language (ISO): en
Abstract: This paper presents a compositional approach to active automata learning of Systems of Procedural Automata (SPAs), an extension of Deterministic Finite Automata (DFAs) to systems of DFAs that can mutually call each other. SPAs are of high practical relevance, as they allow one to efficiently learn intuitive recursive models of recursive programs after an easy instrumentation that makes calls and returns observable. Key to our approach is the simultaneous inference of individual DFAs for each of the involved procedures via expansion and projection: membership queries for the individual DFAs are expanded to membership queries of the entire SPA, and global counterexample traces are transformed into counterexamples for the DFAs of concerned procedures. This reduces the inference of SPAs to a simultaneous inference of the DFAs for the involved procedures for which we can utilize various existing regular learning algorithms. The inferred models are easy to understand and allow for an intuitive display of the procedural system under learning that reveals its recursive structure. We implemented the algorithm within the LearnLib framework in order to provide a ready-to-use tool for practical application which is publicly available on GitHub for experimentation.
Subject Headings: Active automata learning
Procedural systems
Context-free languages
Visibly pushdown languages
Subject Headings (RSWK): Kontextfreie Sprache
Deterministischer endlicher Automat
URI: http://hdl.handle.net/2003/40881
http://dx.doi.org/10.17877/DE290R-22738
Issue Date: 2021-10-05
Rights link: http://creativecommons.org/licenses/by/4.0/
Appears in Collections:LS 05 Programmiersysteme

Files in This Item:
File Description SizeFormat 
Frohme-Steffen2021_Article_CompositionalLearningOfMutuall.pdf765.35 kBAdobe PDFView/Open


This item is protected by original copyright



This item is licensed under a Creative Commons License Creative Commons