scratch

§ Boolean Reflection Design

created 2024-11-07
  • To decide some kind of property involving free variables, we split it into two parts:
  • First, closed term that interns all free variables into an AST (makes them into bvars), so we have e.g. decidable equality on it, which is closed.
  • An environment that refers to the local context (i.e. the fvars), which needs to be built by metaprogramming.
  • So, for example, to implement something like ring, we have a part that uses bvars to be able to build closed terms, and a decidable "isomorphism" predicate which shows that they will be equal.
❦
Newer ৪ Blog ৪ Older