2010
DOI: 10.1007/s10817-010-9194-x
|View full text |Cite
|
Sign up to set email alerts
|

Hybrid

Abstract: Combining higher-order abstract syntax and (co)-induction in a logical framework is well known to be problematic. We describe the theory and the practice of a tool called Hybrid, within Isabelle/HOL and Coq, which aims to address many of these difficulties. It allows object logics to be represented using higher-order abstract syntax, and reasoned about using tactical theorem proving and principles of (co)induction. Moreover, it is definitional, which guarantees consistency within a classical type theory. The i… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
13
0

Year Published

2011
2011
2023
2023

Publication Types

Select...
4
4
1

Relationship

1
8

Authors

Journals

citations
Cited by 52 publications
(13 citation statements)
references
References 97 publications
(173 reference statements)
0
13
0
Order By: Relevance
“…Other notable frameworks for language design include the Fiat Delaware et al, 2015) framework for Coq, as well as the Hybrid (Felty and Momigliano, 2012) framework for Isabelle/HOL and Coq, which addresses the difficulties of using HOAS with inductive and coinductive proofs.…”
Section: Framework For Language Design and Metatheorymentioning
confidence: 99%
“…Other notable frameworks for language design include the Fiat Delaware et al, 2015) framework for Coq, as well as the Hybrid (Felty and Momigliano, 2012) framework for Isabelle/HOL and Coq, which addresses the difficulties of using HOAS with inductive and coinductive proofs.…”
Section: Framework For Language Design and Metatheorymentioning
confidence: 99%
“…We declare the side condition Val as an untyped constant and a rule ValRule of type ExternalConditionRule. The Scala code of ValRule is given in Listing 6 8 . It checks the condition Val(t, a), i.e., that t is of the form free n or λ F; if that fails, it registers an error message that the IDE will show to the user.…”
Section: External Side Conditionsmentioning
confidence: 99%
“…Features realized generically in logical frameworks include reasoning about object logics (Twelf [17], Abella [9]), interactive theorem proving (Isabelle [16]), concurrency (CLF [24]), reasoning about contexts (Beluga [18]), rewriting (Dedukti [2]), side conditions (LLF P [12]), or integration with proof assistants (Hybrid [8]). Moreover, many logic-specific systems are investigating how to allow users to experiment with system behavior inside the system, e.g., via meta-programming (for Idris in [4], for Lean in [7]) or unification hints (for Coq in [10], for Matita in [1]).…”
Section: Introduction and Related Workmentioning
confidence: 99%
“…There are two main approaches to support reasoning about HOAS encodings: 1) In the prooftheoretic approaches, we adopt a two-level system where we implement a specification logic (similar to LF) inside a higher-order logic supporting (co)inductive definitions, the approach taken in Abella (9), or type theory, the aproach taken in Hybrid (8). To distinguish in the proof theory between quantification over variables and quantification over terms, (10) introduce a new quantifier, ∇, to describe nominal abstraction logically.…”
Section: Related Workmentioning
confidence: 99%