Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. Decision Procedures for Algebraic Data Types with Abstractions
 
conference paper

Decision Procedures for Algebraic Data Types with Abstractions

Suter, Philippe  
•
Dotta, Mirco
•
Kuncak, Viktor  
2010
Acm Sigplan Notices
ACM Symp. Principles of Programming Languages (POPL)

We describe a family of decision procedures that extend the decision procedure for quantifier-free constraints on recursive algebraic data types (term algebras) to support recursive abstraction functions. Our abstraction functions are catamorphisms (term algebra homomorphisms) mapping algebraic data type values into values in other decidable theories (e. g. sets, multisets, lists, integers, booleans). Each instance of our decision procedure family is sound; we identify a widely applicable many-to-one condition on abstraction functions that implies the completeness. Complete instances of our decision procedure include the following correctness statements: 1) a functional data structure implementation satisfies a recursively specified invariant, 2) such data structure conforms to a contract given in terms of sets, multisets, lists, sizes, or heights, 3) a transformation of a formula (or lambda term) abstract syntax tree changes the set of free variables in the specified way.

  • Details
  • Metrics
Type
conference paper
DOI
10.1145/1706299.1706325
Web of Science ID

WOS:000274028100019

Author(s)
Suter, Philippe  
Dotta, Mirco
Kuncak, Viktor  
Date Issued

2010

Published in
Acm Sigplan Notices
Volume

45

Start page

199

End page

210

Subjects

Algorithms

•

Languages

•

Verification

•

Constraints

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
LARA  
Event nameEvent date
ACM Symp. Principles of Programming Languages (POPL)

2010

Available on Infoscience
February 14, 2010
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/47386
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés