• Corpus ID: 1641

On Role Logic

@article{Kuncak2004OnRL,
  title={On Role Logic},
  author={Viktor Kuncak and Martin C. Rinard},
  journal={ArXiv},
  year={2004},
  volume={cs.PL/0408018}
}
We present role logic, a notation for describing properties of relational structures in shape analysis, databases, and knowledge bases. We construct role logic using the ideas of de Bruijn’s notation for lambda calculus, an encoding of first-order logic in lambda calculus, and a simple rule for implicit arguments of unary and binary predicates. The unrestricted version of role logic has the expressive power of first-order logic with transitive closure. Using a syntactic restriction on role… 
Decision Procedures for Set-Valued Fields
TLDR
This paper explores reasoning techniques for programs that manipulate data structures specified using set-valued abstract fields associated with container objects, and compares the expressive power and the complexity of specification languages based on 1) decidable prefix vocabulary classes of first-order logic, 2) twovariable logic with counting, and 3) Nelson-Oppen combinations of multisorted theories.
Description logics for shape analysis
  • L. Georgieva, Patrick Maier
  • Computer Science
    Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05)
  • 2005
TLDR
A predicate abstraction based shape analysis, parameterized by description logics to represent the abstraction predicates is proposed, whichDepending on the particular logic chosen sharing, reachability and separation in pointer data structures are expressible.
On Spatial Conjunction as Second-Order Logic
TLDR
These results explain the great expressive power of spatial conjunction and can be used to show that adding unrestricted spatial conjunction to a decidable logic leads to an un-decidable logic.
On the Complexity of the Bernays-Schönfinkel Class with Datalog
TLDR
It is proved that both satisfiability and entailment for the new logic are decidable in NEXPTIME and a matching lower bound for the original logic is given, which establishes N EXPTIME-completeness of the satisfiabilityand entailment problems for both of them.
Role analysis
TLDR
An interprocedural, compositional, and context-sensitive role analysis algorithm that verifies that a program maintains role constraints is presented.
Bounded Model Checking of Pointer Programs
TLDR
A small model theorem is scored for the 2-variable fragment of the Bernays-Schonfinkel class extended with least fixed points expressible by certain monadic Datalog programs that shows that this fragment is closed under computing weakest preconditions.
Inductive Reasoning for Shape Invariants
TLDR
An approach for verifying that imperative programs that destructively manipulate heap data structures do not corrupt their data structures is proposed and off-the-shelf first-order theorem provers are used to reason about these specifications.
Generalized Records and Spatial Conjunction in Role Logic
TLDR
A natural fragment of role logic corresponds to two-variable logic with counting and is therefore decidable and can be applied to relational structures in shape analysis, databases and knowledge bases.
Model-Checking of Array-Based Systems: from Foundations to Implementation
TLDR
The notion of array based systems is presented and a suitable format for initial/unsafe states and transition formulae can be designed: this format is sufficiently expressive to cover interesting classes of infinite state systems and, at the same time, generates proof obligations that can be discharged by instantiation and SMT solving techniques for quantifier-free formULae.
On Modular Pluggable Analyses Using Set Interfaces
TLDR
A technique that enables the focused application of multiple analyses to different modules in the same program, and the key soundness property that an analysis plugin must satisfy to successfully participate in this system is characterized.
...
1
2
...

References

SHOWING 1-10 OF 87 REFERENCES
On the Relative Expressiveness of Description Logics and Predicate Logics
TLDR
It is shown that the descriptions built using the constructors usually considered in the DL literature are characterized exactly as the predicates definable by formulas in \ tL3, the subset of first-order predicate calculus with monadic and dyadic predicates which allows only three variable symbols.
BI as an assertion language for mutable data structures
TLDR
A model in which the law of the excluded middleholds is given is given, thus showing that the approach is compatible with classical logic, and a local character enjoyed by specifications in the logic is described, which enables a class of frame axioms, which say what parts of the heap don't change, to be inferred automatically.
Deciding validity in a spatial logic for trees
TLDR
A sequent calculus is introduced for the logic, and it is shown to be sound and complete with respect to an interpretation in terms of satisfaction and validity, and a small programming language is described based on this idea.
Designing an Algorithm for Role Analysis
TLDR
An interprocedural, compositional, and context-sensitive role analysis that verifies that a program respects the role constraints across procedure calls is presented, and a programming model that allows temporary violations of role constraints is introduced.
Graphs and Decidable Transductions based on Edge Constraints
We give examples to show that not even c-edNCE , the most general known notion of context-free graph grammar, is suited for the specification of some common data structures. To overcome this problem,
Automatic verification of pointer programs using monadic second-order logic
TLDR
A technique for automatic verification of pointer programs based on a decision procedure for the monadic second-order logic on finite strings that can be used to verify extensive properties of smaller pointer programs and could be particularly useful in a teaching environment.
Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem
Abstract In ordinary lambda calculus the occurrences of a bound variable are made recognizable by the use of one and the same (otherwise irrelevant) name at all occurrences. This convention is known
On the Theory of Structural Subtyping
TLDR
The notion of -term-power of C is introduced, which generalizes the structure arising in structural subtyping and gives an embedding of the monadic second- order theory of infinite binary tree into the first-order theory of structuralSubtyping of recursive types.
Separation logic: a logic for shared mutable data structures
  • J. C. Reynolds
  • Computer Science
    Proceedings 17th Annual IEEE Symposium on Logic in Computer Science
  • 2002
TLDR
An extension of Hoare logic that permits reasoning about low-level imperative programs that use shared mutable data structure is developed, including extensions that permit unrestricted address arithmetic, dynamically allocated arrays, and recursive procedures.
The pointer assertion logic engine
TLDR
A new framework for verifying partial specifications of programs in order to catch type and memory errors and check data structure invariants and can verify a large class of data structures, namely all those that can be expressed as graph types.
...
1
2
3
4
5
...