DKAL and Z3: a logic embedding experiment

  • Authors:
  • Sergio Mera;Nikolaj Bjørner

  • Affiliations:
  • Computer Science Department, University of Buenos Aires, Buenos Aires, Argentina;Microsoft Research, One Microsoft Way, Redmond, WA

  • Venue:
  • Fields of logic and computation
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Yuri Gurevich and Itay Neeman proposed the Distributed Knowledge Authorization Language, DKAL, as an expressive, yet very succinct logic for distributed authorization. DKAL uses a combination of modal and intuitionistic propositional logic. Modalities are used for qualifying assertions made by different principals and intuitionistic logic captures very elegantly assertions about basic information. Furthermore, a non-trivial and useful fragment known as the primal infon logic is amenable to efficient linear-time saturation. In this paper we experiment with an embedding of the full DKAL logic into the state-of-the-art Satisfiability Modulo Theories solver Z3 co-developed by the second author. Z3 supports classical first-order semantics of formulas, so it is not possible to directly embed DKAL into Z3. We therefore use an indirect encoding. The one experimented with in this paper uses the instantiation-based support for quantifiers in Z3. Z3 offers the feature to return a potential ground counter-model when the saturation procedure ends up with a satisfiable set of ground assertions. We develop an algorithm that extracts a DKAL model from the propositional model, in order to provide root causes for non-derivability.