package universo

  1. Overview
  2. Docs

Module Elaboration.VarSource

module B = Kernel.Basic
module T = Kernel.Term
Sourceexception Not_uvar
Sourceval basename : string

prefix for all the universe variables.

Sourceval is_pre_var : T.term -> bool

Check if a term should be elaborated by a fresh variable

Sourceval is_uvar : T.term -> bool

Check if a term is universe variable, i.e. its ident should be ?11, ?43...

Sourceval name_of_uvar : T.term -> Kernel.Basic.name

name_of_uvar t returns the name of universe variable if t is a universe variable, raise Not_uvar otherwise

Sourceval counter : int ref

Internal counter use by this module to generate fresh variables

Sourceval fresh : unit -> B.ident

Generate a fresh name for a universe variable

Sourceval fresh_uvar : F.cout F.t -> unit -> T.term

fresh_uvar env () returns a fresh term representing a universe variable. Add a new declaration into the module env.md

OCaml

Innovation. Community. Security.