A MuDDy Experience-ML Bindings to a BDD Library

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Binary Decision Diagrams (BDDs) are a data structure used to efficiently represent boolean expressions on canonical form. BDDs are often the core data structure in model checkers. MuDDy is an ML interface (both for Standard ML and Objective Caml) to the BDD package BuDDy that is written in C. This combination of an ML interface to a high-performance C library is surprisingly fruitful. ML allows you to quickly experiment with high-level symbolic algorithms before handing over the grunt work to the C library. I show how, with a relatively little effort, you can make a domain specific language for concurrent finite state-machines embedded in Standard ML and then write various custom model-checking algorithms for this domain specific embedded language (DSEL).
Original languageEnglish
Title of host publicationDomain-Specific Languages, IFIP TC 2 Working Conference, DSL 2009
EditorsWalid Mohamed Taha
Number of pages12
Publication date2009
ISBN (Print)978-3-642-03033-8
Publication statusPublished - 2009
EventDomain-Specific Languages, IFIP TC 2 Working Conference - Oxford, United Kingdom
Duration: 15 Jul 200917 Jul 2009


ConferenceDomain-Specific Languages, IFIP TC 2 Working Conference
LandUnited Kingdom
SeriesLecture notes in computer science

ID: 19345434