Corpus ID: 16694481

Union and Cast in Deductive Verification ⋆

@inproceedings{Moy2007UnionAC,
  title={Union and Cast in Deductive Verification ⋆},
  author={Yannick Moy},
  year={2007}
}
  • Yannick Moy
  • Published 2007
  • Deductive verification based on weakest-precondition calculus has proved effective at proving imperative programs, through a suitable encoding of memory as functional arrays (a.k.a. the Burstall-Bornat model). Unfortunately, this encoding of memory makes it impossible to support features like union and cast in C. We show that an interesting subset of those unions and casts can be encoded as structure subtyping, on which it is possible to extend the BurstallBornat encoding. We present an… CONTINUE READING
    18 Citations

    Figures from this paper.

    Structured Types and Separation Logic
    • Harvey Tuch
    • Computer Science
    • Electron. Notes Theor. Comput. Sci.
    • 2008
    • 12
    • PDF
    Formal memory models for verifying C systems code
    • 30
    • PDF
    Formal Verification of C Systems Code
    • Harvey Tuch
    • Computer Science
    • Journal of Automated Reasoning
    • 2009
    • 33
    • PDF
    Mind the Gap
    • 13
    • PDF
    Functional dependencies of C functions via weakest pre-conditions
    • 12
    Separation Logic Verification of C Programs with an SMT Solver
    • 43
    • PDF
    Region analysis for deductive verification of C programs
    • 2

    References

    SHOWING 1-10 OF 18 REFERENCES
    Multi-prover Verification of C Programs
    • 209
    • Highly Influential
    • PDF
    Types, bytes, and separation logic
    • 181
    • PDF
    Proving Pointer Programs in Hoare Logic
    • 232
    • PDF
    CCured in the real world
    • 177
    • PDF
    Simplify: a theorem prover for program checking
    • 841
    • PDF
    A Unified Memory Model for Pointers
    • 18
    • PDF
    State of the Union : Dependent Type Inference via Craig Interpolation
    • 1
    • PDF
    Physical type checking for C
    • 71
    Coping with type casts in C
    • 64
    CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs
    • 1,099
    • PDF