Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/Isabelle/Archive-of-Formal-Proofs/thys/LambdaMu/   (Archive of formal Proofs Version 2026-5©)  Datei vom 29.4.2026 mit Größe 1 kB image not shown  

Quelle  Syntax.thy   Sprache: Isabelle

 

section ‹The $\lambda\mu$-calculus›

text‹More examples, as well as a call-by-value programming language built on
  of our formalisation, can be found in an associated Bitbucket repository~cite‹"bitbucket"›.
›
  
theory Syntax
  imports Main
begin

subsection ‹Syntax›

datatype type = 
     Iota
    | Fun type type (infixr ‹→› 200)

text‹To deal with $\alpha$-equivalence, we use De Bruijn's nameless representation wherein each bound
 variable is represented by a natural number, its index, that denotes the number of binders
 that must be traversed to arrive at the one that binds the given variable.
 Each free variable has an index that points into the top-level context, not enclosed in
 any abstractions.
›
  
datatype trm =
      LVar nat    (‹`_› [100] 100)
    | Lbd type trm (‹λ_:_› [0, 60] 60)
    | App trm trm (infix ‹🚫› 60)
    | Mu type cmd (‹μ_:_› [0, 60] 60)
and cmd = 
      MVar nat trm (‹🚫_› [0, 60] 60)
      
datatype ctxt = 
  ContextEmpty (‹♢›) |
  ContextApp ctxt trm (infixl ‹\∙› 75)
  
primrec ctxt_app :: "ctxt → ctxt → ctxt" (infix ‹.› 60) where
  "♢ . F = F" |
  "(E \<bullet> t) . F = (E . F) \<bullet> t"
  
fun is_val :: "trm → bool" where
  "is_val (λ T : v) = True" |
  "is_val _ = False"

  
end

Messung
CHZG
879710094

¤ Dauer der Verarbeitung: 0.1 Sekunden  (vorverarbeitet am  2026-11-04) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover


Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.