package lambdapi

  1. Overview
  2. Docs
Proof assistant for the λΠ-calculus modulo rewriting

Install

Dune Dependency

Authors

Maintainers

Sources

lambdapi-2.4.1.tbz
sha256=221dff97ab245c49b7e6480fa2a3a331ab70eb86dd5d521e2c73151029bbb787
sha512=a39961bb7f04f739660a98a52981d4793709619cd21310ca6982ba78af81ef09e01c7517ee3b8b2687b09f7d2614d878c1d69494ca6ab8ef8205d240c216ce8a

doc/lambdapi.core/Core/Infer/index.html

Module Core.InferSource

Type inference and checking

Sourceval infer_noexn : Term.problem -> Term.ctxt -> Term.term -> (Term.term * Term.term) option

infer_noexn p ctx t returns [Some(t',a)] where [t'] is a refinement of [t] and [a] is some type for [t'] in the context [ctx], and [None] otherwise, possibly adding new constraints in [p]. The metavariables of [p] are updated when a metavariable is instantiated or created. [ctx] must be well sorted.

Sourceval check_noexn : Term.problem -> Term.ctxt -> Term.term -> Term.term -> Term.term option

check_noexn p ctx t a returns Some t' if t can be refined to t' of type a in context ctx, and None otherwise, possibly adding new constraints in p. The metavariables of p are updated when a metavariable is instantiated or created. The context ctx and the type a must be well sorted.

Sourceval check_sort_noexn : Term.problem -> Term.ctxt -> Term.term -> (Term.term * Term.term) option
OCaml

Innovation. Community. Security.