Model Checking Regular Language Constraints

08/30/2017
by   Arlen Cox, et al.
0

Even the fastest SMT solvers have performance problems with regular expressions from real programs. Because these performance issues often arise from the problem representation (e.g. non-deterministic finite automata get determinized and regular expressions get unrolled), we revisit Boolean finite automata, which allow for the direct and natural representation of any Boolean combination of regular languages. By applying the IC3 model checking algorithm to Boolean finite automata, not only can we efficiently answer emptiness and universality problems, but through an extension, we can decide satisfiability of multiple variable string membership problems. We demonstrate the resulting system's effectiveness on a number of popular benchmarks and regular expressions.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/14/2022

Model-checking lock-sharing systems against regular constraints

We study the verification of distributed systems where processes are fin...
research
12/25/2018

Revisiting Timed Logics with Automata Modalities

It is well known that (timed) ω-regular properties such as `p holds at e...
research
08/05/2020

Glushkov's construction for functional subsequential transducers

Glushkov's construction has many interesting properties and they become ...
research
07/31/2023

Decision Procedures for Sequence Theories (Technical Report)

Sequence theories are an extension of theories of strings with an infini...
research
07/12/2023

A Program That Simplifies Regular Expressions (Tool paper)

This paper presents the main features of a system that aims to transform...
research
07/10/2018

Streamable Regular Transductions

Motivated by real-time monitoring and data processing applications, we d...
research
09/21/2017

Learning to Prove Safety over Parameterised Concurrent Systems (Full Version)

We revisit the classic problem of proving safety over parameterised conc...

Please sign up or login with your details

Forgot password? Click here to reset