Specification sketching for Linear Temporal Logic
Simon Lutz, Daniel Neider, Rajarshi Roy

TL;DR
This paper introduces a novel approach called specification sketching for Linear Temporal Logic (LTL), allowing engineers to create partial specifications and complete them automatically based on system behavior examples, easing the formalization process.
Contribution
It proposes the concept of LTL sketching, formulates the completion problem as NP-complete, and develops SAT-based algorithms with a prototype implementation.
Findings
Sketching can effectively complete partial LTL specifications.
The completion problem is NP-complete.
Prototype demonstrates practical viability of the approach.
Abstract
Virtually all verification and synthesis techniques assume that the formal specifications are readily available, functionally correct, and fully match the engineer's understanding of the given system. However, this assumption is often unrealistic in practice: formalizing system requirements is notoriously difficult, error-prone, and requires substantial training. To alleviate this severe hurdle, we propose a fundamentally novel approach to writing formal specifications, named specification sketching for Linear Temporal Logic (LTL). The key idea is that an engineer can provide a partial LTL formula, called an LTL sketch, where parts that are hard to formalize can be left out. Given a set of examples describing system behaviors that the specification should or should not allow, the task of a so-called sketching algorithm is then to complete a given sketch such that the resulting LTL…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Software Testing and Debugging Techniques · Logic, programming, and type systems
