From c78d8dd8916488a04a6374be0df56307292c35f6 Mon Sep 17 00:00:00 2001 From: "Robert J. Simmons" <442315+robsimmons@users.noreply.github.com> Date: Fri, 12 Apr 2024 17:44:16 -0400 Subject: [PATCH] Wiki updates (#40) --- wiki/pages/deterministic-declaration.elf | 2 +- wiki/pages/general-description-of-twelf.elf | 21 +- ...nguages-to-use-hypothetical-judgements.elf | 653 +++++++++++++----- wiki/src/assets/serverok.png | Bin 0 -> 142441 bytes wiki/src/content/docs/contributing.mdx | 11 +- 5 files changed, 503 insertions(+), 184 deletions(-) create mode 100644 wiki/src/assets/serverok.png diff --git a/wiki/pages/deterministic-declaration.elf b/wiki/pages/deterministic-declaration.elf index caa713d3..5f1a8e27 100644 --- a/wiki/pages/deterministic-declaration.elf +++ b/wiki/pages/deterministic-declaration.elf @@ -8,7 +8,7 @@ We define a tree with labeled nodes, and a distinguished tree ``testtree``.
-![A starry night sky.](../../../assets/smalltree.png) +![Visual description of a balanced tree with four labeled leaves.](/src/assets/smalltree.png) Graphical representation of the tree ``testtree`` used in this example.
diff --git a/wiki/pages/general-description-of-twelf.elf b/wiki/pages/general-description-of-twelf.elf index 626260b9..81fc846f 100644 --- a/wiki/pages/general-description-of-twelf.elf +++ b/wiki/pages/general-description-of-twelf.elf @@ -1,20 +1,21 @@ %%! title: "General description of Twelf" +%%! description: "A quick introduction to Twelf, aimed at folks without any specific technical background" %{! _This quick introduction to Twelf is aimed at people without any specific technical background. If you want more information, you can find it on the [documentation](/wiki/documentation/) page._ -[[Image:ServerOK.png|thumb|_Using Twelf with the Emacs text editor._ The red, blue, and black text at the top is Twelf code, and the black text at the bottom is the output from the Twelf program reading the code.]]**Twelf** is a piece of computer software, and it is also a computer language understood by the Twelf software. This is a common ambiguity in computer systems - you can "install Java on your computer" (Java, a piece of computer software), or you can "write programs in Java for work" (Java, the computer language that is understood and interpreted by the software). + +**Twelf** is a piece of computer software, and it is also a computer language understood by the Twelf software. This is a common ambiguity in computer systems - you can "install Java on your computer" (Java, a piece of computer software), or you can "write programs in Java for work" (Java, the computer language that is understood and interpreted by the software). + +
+![A Twelf file open in Emacs, showing Twelf's output and the "Server OK" message that means Twelf loaded the file with no errors.](/src/assets/serverok.png) + +_Using Twelf with the Emacs text editor. The red, blue, and black text at the top is Twelf code, and the black text at the bottom is the output from the Twelf program reading the code._ +
C code and Java code describe programs, HTML code describes graphical web pages, and Twelf code describes _logical systems._ Logical systems are sometimes strange to think about, because the only logical system that most people have used is basic arithmetic (addition, subtraction, division, etc.), or maybe set theory if they're particularly ambitious. Most people that use Twelf aren’t interested in using it to do basic arithmetic, because there are a great deal more interesting logical systems than just the ones that we learn about in high school. The reason someone might want to use Twelf code to describe a logical system is that once they’ve described it, they can write more Twelf code that uses that logical system. You could use Twelf to write out a statement about basic arithmetic (for instance, “if a + b = c, then b + a = c”), and then use Twelf to write out a justification of why that statement is true (i.e. a _proof_). When you do so, Twelf will check your proof, making sure that what you said actually is true! -Twelf is by no means the only program you can use to do this sort of thing. ACL2, AUTOMATH, Coq, HOL, HOL Light, LEGO, Isabelle, MetaPRL, NuPRL PVS, and TPS are just a few (!) of the systems that will let you define logical systems and prove things with them. A lot of really amazing work is done using these different systems: one project at the University of Pittsburgh is using HOL Light to check a proof of the Kepler conjecture [http://code.google.com/p/flyspeck/], and The Economist wrote an article about it [http://www.economist.com/science/displayStory.cfm?story_id=3809661] (unfortunately, it is no longer freely available). - -But here’s where, for people that use Twelf, it gets interesting: it turns out that while basic arithmetic, set theory, and interesting logics are logical systems, _programming languages_ are also logical systems - and Twelf has a couple of unique features that make it a great tool to use when the logical systems you are working with are programming languages... !}% +Twelf is by no means the only program you can use to do this sort of thing. ACL2, Agda, AUTOMATH, HOL, HOL Light, Lean, LEGO, Isabelle, MetaPRL, NuPRL PVS, Rocq, and TPS are just a few (!) of the systems that will let you define logical systems and prove things with them. A lot of really amazing work is done using these different systems: one project at the University of Pittsburgh used HOL Light to [check a proof of the Kepler conjecture](https://arxiv.org/abs/1501.02155). [The Economist wrote an article about it](http://www.economist.com/science/displayStory.cfm?story_id=3809661), though that article is unfortunately no longer freely available. -%{! ------ -This page was copied from the MediaWiki version of the Twelf Wiki. -If anything looks wrong, you can refer to the -[wayback machine's version here](https://web.archive.org/web/20240303030303/http://twelf.org/wiki/General_description_of_Twelf). -!}% +But here’s where, for people that use Twelf, it gets interesting: it turns out that while basic arithmetic, set theory, and interesting logics are logical systems, _programming languages_ are also logical systems - and Twelf has a couple of unique features that make it a great tool to use when the logical systems you are working with are programming languages... !}% \ No newline at end of file diff --git a/wiki/pages/reformulating-languages-to-use-hypothetical-judgements.elf b/wiki/pages/reformulating-languages-to-use-hypothetical-judgements.elf index ff1e46e5..12285a91 100644 --- a/wiki/pages/reformulating-languages-to-use-hypothetical-judgements.elf +++ b/wiki/pages/reformulating-languages-to-use-hypothetical-judgements.elf @@ -1,133 +1,214 @@ %%! title: "Reformulating languages to use hypothetical judgements" +%%! description: "Using parallel reduction in the lambda calculus, this article explores different ways to use LF to represent relations that have special cases for variables." -%{! It's easy to represent [hypothetical judgement](/wiki/hypothetical-judgment/)s in LF, exploiting [higher-order](/wiki/higher-order-judgements/) representation techniques. This tutorial presents some object-language judgements which are **not** typically phrased as hypothetical judgements, but can easily be reformulated as such, making the correspondence with their LF representation quite clear. -In particular, we discuss parallel reduction and complete development for the lambda-calculus; thanks to [[User:rpollack]] for suggesting this example. +%{! It's easy to represent [hypothetical judgements](/wiki/hypothetical-judgment/) in LF, exploiting [higher-order](/wiki/higher-order-judgements/) representation techniques. This tutorial presents some object-language judgements which are **not** typically phrased as hypothetical judgements, but can easily be reformulated as such, making the correspondence with their LF representation quite clear. In particular, we discuss parallel reduction and complete development for the lambda-calculus; thanks to Randy Pollack for suggesting this example. -Before reading this tutorial, you should learn about hypothetical judgements and their representation in LF: [Proving metatheorems: Representing the judgements of the STLC](/wiki/proving-metatheorems-representing-the-judgements-of-the-stlc/) shows how object-language hypothetical judgements can be represented using LF binding. [Proving metatheorems: Proving totality assertions in non-empty contexts](/wiki/proving-metatheorems-proving-totality-assertions-in-non-empty-contexts/) shows an additional example, and discusses proving totality assertions about higher-order judgements. [Proving metatheorems: Proving metatheorems in non-empty contexts](/wiki/proving-metatheorems-proving-metatheorems-in-non-empty-contexts/) shows how to use totality assertions to prove metatheorems about higher-order judgements. +Before reading this tutorial, you should learn about hypothetical judgements and their representation in LF: + + - [Representing the judgements of the STLC](/wiki/proving-metatheorems-representing-the-judgements-of-the-stlc/) shows how object-language hypothetical judgements can be represented using LF binding. + - [Proving totality assertions in non-empty contexts](/wiki/proving-metatheorems-proving-totality-assertions-in-non-empty-contexts/) shows an additional example, and discusses proving totality assertions about higher-order judgements. + - [Proving metatheorems in non-empty contexts](/wiki/proving-metatheorems-proving-metatheorems-in-non-empty-contexts/) shows how to use totality assertions to prove metatheorems about higher-order judgements. ## Syntax is a hypothetical judgement First, we need to define the syntax of the untyped lambda-calculus: -<code> -M ::= x | lam x.M | app M1 M2 -</code> +```math +M ::= x \mid \mathsf{lam}(x.M) \mid \mathsf{app}(M_1, M_2) +``` -A traditional story about this definition is that variables ``x`` are some piece of first-order data such as strings or de Bruijn indices, ``lam x.M`` is a binder (which means it can be <math>\alpha</math>-converted and can be substituted for) and so on. +A traditional story about this definition is that variables are some piece of first-order data such as strings or de Bruijn indices, is a binder (which means it can be -converted and can be substituted for) and so on. -However, suppose we were given a single untyped datatype of tree-structured data with binding as a primitive notion, where such trees consist of variables ``x``, binders ``x.t``, and applications of constants such as ``lam`` and ``app``. Then we can save ourselves the trouble of recapitulating the construction of binding for each object language by simply carving out those trees that represent the language in question. We can do so with a hypothetical judgement of the form ``x1 trm ... xn trm |- M trm``, where the subjects of the judgement ``trm`` are untyped binding trees. This judgement is defined as follows: +However, suppose we were given a single untyped datatype of tree-structured data with binding as a primitive notion, where such trees consist of variables , binders , and applications of constants such as and . Then we can save ourselves the trouble of recapitulating the construction of binding for each object language by simply carving out those trees that represent the language in question. We can do so with a hypothetical judgement of the form -<code> -x trm in G ----------- -G |- x trm +```math +x_1\,\mathtt{trm} \; \ldots \; x_n\,\mathtt{trm} \vdash M\,\mathtt{trm} +``` -G |- M1 trm G |- M2 trm -------------------------- -G |- (app M1 M2) trm +where the subjects of the judgement "" are untyped binding trees. This judgement is defined as follows: +```math +{ + {x\,\mathtt{trm} \in \Gamma} + \over + {\Gamma \vdash x\,\mathtt{trm}} +} +\qquad +{ + {\Gamma \vdash M_1\,\mathsf{trm} \qquad \Gamma \vdash M_2\,\mathsf{trm}} + \over + {\Gamma \vdash \mathsf{app}(M_1, M_2)\,\mathtt{trm}} +} +``` -G , x trm |- M trm ------------------- -G |- lam (x.M) trm -</code> +```math +{ + {\Gamma, x\,\mathtt{trm} \vdash M\,\mathtt{trm}} + \over + {\Gamma \vdash \mathsf{lam}(x.M)\,\mathtt{trm}} +} +``` -A variable is a term if it was assumed to be a term; at a binder, we extend the context by assuming a new term. The important point about this style of definition is that variables are inherently _scoped_ and given meaning only by assumption: ``x`` is only meaningful if we are in a context where we have some assumptions about it. Consequently, ``x1 trm ... xn trm |- M trm`` captures exactly the terms with free variables ``x1``...``xn``. +A variable is a term if it was assumed to be a term; at a binder, we extend the context by assuming a new term. The important point about this style of definition is that variables are inherently _scoped_ and given meaning only by assumption: is only meaningful if we are in a context where we have some assumptions about it. Consequently, -When you're working with an inherently scoped type of binding trees, you can't give an unconditional definition of what it means to be a term with rules like +```math +x_1\,\mathtt{trm} \; \ldots \; x_n\,\mathtt{trm} \vdash M\,\mathtt{trm} +``` -<code> ------ -x trm +captures exactly the terms with free variables .... -M trm -------------- -lam (x.M) trm -</code> +When you're working with an inherently scoped type of binding trees, you can't give an unconditional definition of what it means to be a term with rules like + +```math +\color{red} +{ + \over + {x\,\mathtt{trm}} +} +\qquad +{ + M\,\mathtt{trm} + \over + \mathsf{lam}(x.M)\,\mathtt{trm} +} +``` where the first rule means "all those trees that happen to be variables are terms": it would break the abstraction of variables-as-scoped-data to state a rule about all those trees that happen to be variables. The moral of the story is that syntax with binding can be thought of as a hypothetical judgement. -The LF encoding of this syntax can be thought of as an [intrinsic encoding](/wiki/intrinsic-and-extrinsic-encodings/) of the above judgement ``x1 trm ... xn trm |- M trm``. LF provides typed binding trees, so we can define terms by specifying typed operators, rather than a predicate over untyped trees: !}% +The LF encoding of this syntax can be thought of as an [intrinsic encoding](/wiki/intrinsic-and-extrinsic-encodings/) of the above judgement . LF provides _typed_ binding trees, so we can define terms by specifying typed operators, rather than a predicate over untyped trees: !}% trm : type. lam : (trm -> trm) -> trm. app : trm -> trm -> trm. -%{! Then the judgement ``x1 trm ... xn trm |- M trm`` becomes the LF judgement -``x1 : trm ... xn : trm |- M : trm`` where ``x`` and ``M`` are LF variables and terms. - -## Parallel reduction - -Parallel reduction is traditionally defined as follows. For conciseness, we write ``\x.M`` for ``lam x.M`` and ``M1 M2`` for ``app M1 M2`` - -<pre> -------- var -x => x - -M => M' N => N' --------------------- beta -(\x.M) N => M'[N'/x] - -M => M' N => N' ----------------- app -(M N) => (M' N') - - M => N -------------- lam -\x.M => \x.N -</pre> +%{! Then this judgement: -However, if we want to treat variables as scoped data, we must be explicit about scoping: +```math +x_1\,\mathtt{trm} \; \ldots \; x_n\,\mathtt{trm} \vdash M\,\mathtt{trm} +``` -<pre> -G ::= . | G , x trm +becomes the following LF judgment: -x trm in G ------------ var -G |- x => x - -G, x trm |- M => M' G |- N => N' ---------------------------------- beta -G |- (\x.M) N => M'[N'/x] +```math +x_1 : \mathtt{trm} \; \ldots \; x_n : \mathtt{trm} \vdash M : \mathtt{trm} +``` -G |- M => M' G |- N => N' --------------------------- app -G |- (M N) => (M' N') +where the and are LF variables and terms. -G, x trm |- M => N -------------------- lam -G |- \x.M => \x.N -</pre> +## Parallel reduction -Now at least the judgement only talks about well-scoped data. However, the ``var`` rule is somewhat problematic. In the abstract, it says "derive ``G |- J'`` if ``J`` is in ``G``", where ``J`` and ``J'`` are _different judgements_. This isn't one of the structural principles of a [hypothetical judgement](/wiki/hypothetical-judgment/), and allowing this strange sort of access to the context could invalidate the substitution principle (if I substitute for ``J``, I can no longer derive ``J'``!). So what are we to do? +Parallel reduction is traditionally defined as follows. For conciseness, we write instead of and instead of + +```math +{ + \over + x \Rightarrow x +}\mathit{var} +\qquad +{ + M \Rightarrow M' \qquad N \Rightarrow N' + \over + (\lambda x.M)\,N \Rightarrow M'[N'/x] +}\mathit{beta} +``` + +```math +{ + M \Rightarrow M' \qquad N \Rightarrow N' + \over + M\,N \Rightarrow M'\,N' +}\mathit{app} +\qquad +{ + M \Rightarrow M' + \over + \lambda x.M \Rightarrow \lambda x.M' +}\mathit{lam} +``` + +But there's a problem with this presentation: it's not explicit about scoping! The first rule has the exact same problem as the "bad" rule above that had as a premise and no conclusion. + +If we want to treat variables as scoped data, we must be explicit about scoping. This suggests the following presentation: + +```math +\Gamma ::= \cdot \mid \Gamma, x\,\mathtt{trm} +``` +```math +{ + x\,\mathtt{trm} \in \Gamma + \over + \Gamma \vdash x \Rightarrow x +}\mathit{var} +\qquad +{ + \Gamma, x\,\mathtt{trm} \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash (\lambda x.M)\,N \Rightarrow M'[N'/x] +}\mathit{beta} +``` +```math +{ + \Gamma \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash M\,N \Rightarrow M'\,N' +}\mathit{app} +\qquad +{ + \Gamma, x\,\mathtt{trm} \vdash M \Rightarrow M' + \over + \Gamma \vdash \lambda x.M \Rightarrow \lambda x.M' +}\mathit{lam} +``` + +Now at least the judgement only talks about well-scoped data. However, the rule that concludes can be a stumbling block for encoding in LF. It has the form "derive if " where and are _different judgements_. That's not one of the structural principles of a [hypothetical judgement](/wiki/hypothetical-judgment/), and allowing this strange sort of access to the context could invalidate the substitution principle (if I substitute for , I can no longer derive !). So what are we to do? + +We'll give three possibilities here. The third is in some sense the "most faithful" to the informal specification above. However, when one is not committed to a specific presentation, it's often best to let the formalization guide the informal specification! ### Reformulation 1: Hypothetical reductions -While a rule that says "derive ``G |- J'`` if ``J`` is in ``G``" is suspicious, a rule that says -"derive ``G |- **J**`` if ``J`` is in ``G``" is just the usual hypothesis/identity axiom that we expect from all hypothetical judgements. So, one solution is to change the notion of context we consider so that ``var`` is just an instance of hypothesis. In particular, whenever we assume a variable ``x trm``, we also _assume_ a derivation ``x => x``: - -<pre> -G ::= . | G , x trm,x => x - -x => x in G ------------ var -G |- x => x - -G, x trm, x => x |- M => M' G |- N => N' ------------------------------------------ beta -G |- (\x.M) N => M'[N'/x] - -G |- M => M' G |- N => N' --------------------------- app -G |- (M N) => (M' N') - -G, x trm, x => x |- M => N ---------------------------- lam -G |- \x.M => \x.N -</pre> - -Now the ``var`` rule is unobjectionable. In the premies of the rules ``beta`` and ``lam``, which deal with binding forms, the context is extended with the assumption that ``x => x`` for the bound variable ``x``. The derivations of this version are isomorphic to the first definition of ``G |- M => N``, but the ``var`` rule here has a more generally acceptable form. +While a rule that says "derive if " is suspicious, a rule that says +"derive if " is just the usual hypothesis/identity axiom that we expect from all hypothetical judgements. So, one solution is to change the notion of context we consider so that is just an instance of hypothesis. Whenever we assume a variable , we also _assume_ a derivation : + +```math +\Gamma ::= \cdot \mid \Gamma, x\,\mathtt{trm}, x \Rightarrow x +``` +```math +{ + x \Rightarrow x \in \Gamma + \over + \Gamma \vdash x \Rightarrow x +}\mathit{var}_1 +\qquad +{ + \Gamma, x\,\mathtt{trm}, x \Rightarrow x \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash (\lambda x.M)\,N \Rightarrow M'[N'/x] +}\mathit{beta}_1 +``` +```math +{ + \Gamma \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash M\,N \Rightarrow M'\,N' +}\mathit{app}_1 +\qquad +{ + \Gamma, x\,\mathtt{trm}, x \Rightarrow x \vdash M \Rightarrow M' + \over + \Gamma \vdash \lambda x.M \Rightarrow \lambda x.M' +}\mathit{lam}_1 +``` + +In this presentation, the rule is totally unobjectionable. In the premies of the rules and , which deal with binding forms, the context is extended with the assumption that for the bound variable . The derivations of this version are isomorphic to the first definition of , but the rule here works as a use of hypothetical judgements. The LF representation of this formulation is quite direct: !}% @@ -145,40 +226,73 @@ The LF representation of this formulation is quite direct: !}% %block =>b : block {x : trm} {=>/x : x => x}. %worlds (=>b) (=> _ _). -%{! Derivations using ``var`` are represented by LF variables representing the reduction assumptions in ``G``. The Twelf ``%worlds`` declaration documents the form of ``G`` in our informal definition. +%{! Derivations using are represented by LF variables representing the reduction assumptions in . The Twelf ``%worlds`` declaration documents the form of in our informal definition. -#### Substitution +#### Adequacy -This reformulation elucidates a substitution principle for parallel reduction, as an instance of the general substitution principle for hypothetical judgements: +This is an [adequate encoding](/wiki/adequacy/) of the informal judgment we started with: there's a 1-to-1 correspondence between derivations like this with the rules subscripted with : -: If ``G, x trm, x => x |- M => N`` and ``G |- M' trm`` and ``G |- M' => M'`` then ``[M'/x]M => [M'/x]N`` +```math +x_1\,\mathtt{trm}, x_1 \Rightarrow x_1, \ldots, x_k\,\mathtt{trm}, x_k \Rightarrow x_k \vdash M \Rightarrow M' +``` -In the LF representation, this substitution principle comes "for free" from the general substitution principle for LF terms. +and with LF derivations $D$ such that the following is derivable according to the rules of LF: -### Reformulation 2: Change the definition +```math +x_1 : \mathtt{trm}, d_1 : x_1 \Rightarrow x_1, \ldots x_k : \mathtt{trm}, d_k : x_k \Rightarrow x_k \vdash D : M \Rightarrow M' +``` -Another option is to change the definition of the judgement so that it doesn't have a variable-specific rule. In this case, we can generalize the variable rule to a general reflexivity rule: -<pre> -G ::= . | G , x trm +#### Substitution + +This reformulation elucidates a substitution principle for parallel reduction, as an instance of the general substitution principle for hypothetical judgements: ------------ refl -G |- M => M - -G, x trm |- M => M' G |- N => N' ---------------------------------- beta -G |- (\x.M) N => M'[N'/x] +> If \ +> and \ +> and ,\ +> then . + +In the LF representation, this substitution principle comes "for free" from the general substitution principle for LF terms. -G |- M => M' G |- N => N' --------------------------- app -G |- (M N) => (M' N') +### Reformulation 2: Change the relation -G, x trm |- M => N -------------------- lam -G |- \x.M => \x.N -</pre> +Another option is to change the definition of the judgement so that it doesn't have a variable-specific rule. In this case, we can generalize the variable rule to a general reflexivity rule: -In this case, this reformulation changes the structure of derivations (these are **not** isomorphic to what we started with) but does not change the relation defined by them, as reflexivity was admissible above. This reformulation clearly would not be an option if reflexivity were not admissible, as in the example of complete development (below). +```math +\Gamma ::= \cdot \mid \Gamma, x\,\mathtt{trm} +``` +```math +{ + \over + \Gamma \vdash M \Rightarrow M +}\mathit{refl}_2 +\qquad +{ + \Gamma, x\,\mathtt{trm} \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash (\lambda x.M)\,N \Rightarrow M'[N'/x] +}\mathit{beta}_2 +``` +```math +{ + \Gamma \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash M\,N \Rightarrow M'\,N' +}\mathit{app}_2 +\qquad +{ + \Gamma, x\,\mathtt{trm} \vdash M \Rightarrow M' + \over + \Gamma \vdash \lambda x.M \Rightarrow \lambda x.M' +}\mathit{lam}_2 +``` + +This is a _different definition_ than the informal one we started with: derivations +with the rules subscripted are _not_ isomorphic to those subscripted . However, the while this change changes the possible derivations, it does not change the relation , because reflexivity was admissible before. Maybe that's an acceptable change, that actually simplifies the definition. The LF representation looks like this: !}% @@ -197,55 +311,239 @@ The LF representation looks like this: !}% %block trmb : block {x : trm}. %worlds (trmb) (=> _ _). -%{! ### Reformulation 3 : tagged variables -(coming soon!) -## Complete development -Parallel reduction is non-deterministic: any left-hand term that can be reduced by the ``beta`` rule can also be reduced by the ``app`` rule. Complete development is a restriction of parallel reduction where ``beta`` takes precedence over ``app``. In each step of complete development, all of the beta-redices in the left-hand term are reduced. +%{! -Informally, we add a side condition to the ``app`` rule: -<pre> -G |- M ==> M' G |- N ==> N' (M is not a lambda) ------------------------------------------------- app -G |- (M N) ==> (M' N') -</pre> +#### Substitution + +The substitution principle implied by this LF development looks a bit simpler than the previous one, though this is only because it lacks the premise , which as we've previously mentioned is always derivable even in the first reformulation. + +> If \ +> and \ +> then . + +### Reformulation 3 : Tagged variables + +If we're really committed to the original informal specification, with the rule that said we could immediately derive the reflexive conclusion when was specifically a variable in the context, then it's possible to capture that by having an new judgment , which is only ever derivable from a hypothetical judgment. + +```math +\Gamma ::= \cdot \mid \Gamma, x\,\mathtt{trm}, x\,\mathtt{isvar} +``` + +Then, we can use the judgment as a regular, uncontroversial hypothetical judgment, where a premise allows you to prove the conclusion + +```math +{ + x\,\mathtt{isvar} \in \Gamma + \over + \Gamma \vdash x\,\mathtt{isvar} +} +\qquad +{ + \Gamma \vdash M\,\mathtt{isvar} + \over + \Gamma \vdash M \Rightarrow M +} +``` + +This presentation is pedantically appropriate, but it's entirely more common to take these two rules and compress them into the single on-paper rule shown below: + +```math +{ + x\,\mathtt{isvar} \in \Gamma + \over + \Gamma \vdash x \Rightarrow x +}\mathit{var}_3 +\qquad +{ + \Gamma, x\,\mathtt{trm}, x\,\mathtt{isvar} \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash (\lambda x.M)\,N \Rightarrow M'[N'/x] +}\mathit{beta}_3 +``` +```math +{ + \Gamma \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash M\,N \Rightarrow M'\,N' +}\mathit{app}_3 +\qquad +{ + \Gamma, x\,\mathtt{trm}, x\,\mathtt{isvar} \vdash M \Rightarrow M' + \over + \Gamma \vdash \lambda x.M \Rightarrow \lambda x.M' +}\mathit{lam}_3 +``` + +When all is said and done, this actually looks a lot like the first reformulation, but we're using a one place relation instead of the two-place relation where hypothetical occurrences are, by invariant, always reflexive. + +Unlike the first reformulation, where the rule came "for free" from LF, this formulation has four rules. The rule looks a little different in LF than in the on-paper derivation, because we use the uppercase `M` in LF instead of the lowercase in , but the meaning is the same, since we will only ever derive a term of type `isvar M` when `M` is a variable in the context. + +!}% + +=> : trm -> trm -> type. %infix none 10 =>. +isvar : trm -> type. + +=>/var : M => M + <- isvar M. +=>/beta : (app (lam M) N) => M' N' + <- ({x:trm} isvar x -> M x => M' x) + <- N => N'. +=>/app : (app M N) => (app M' N') + <- N => N' + <- M => M'. +=>/lam : lam M => lam M' + <- ({x:trm} isvar x -> M x => M' x). + +%block isvarb : block {x : trm} {isvar/x : isvar x}. +%worlds (isvarb) (isvar _) (=> _ _). + + +%{! + +#### Substitution + +As always when we are defining judgments in non-closed worlds, LF provides us a substitution principle for free. But, this time, the substitution principle is basically useless: -How can we state this side condition more precisely? We need a judgement ``notlam M`` which holds whenever ``M`` is not ``\x.M'``. It's easy to define this as a hypothetical judgement if we choose our contexts correctly: +> If \ +> and \ +> and ,\ +> then . -<pre> -G ::= . | G , x trm, notlam x +We only ever get to prove when is a variable! The for-free substitution properties in the last two formulations actually told us something, but here we've got. It _is_ possible to prove the substitution theorem that we expect --- the same substitution theorem that LF gave for free in the first reformulation --- but we have to prove a metatheorem to do so. It's quite a bit of development for what is, at the end of the day, a straightforward proof by induction: -notlam x in G -------------- -G |- notlam x +!}% + +subst : ({x : trm}{d : isvar x} M x => N x) -> M' => M' -> M M' => N M' -> type. +%mode subst +D1 +D2 -D3. + +- : subst ([x][dx: isvar x] =>/var dx) (D2: M' => M') D2. +- : subst ([x][dx: isvar x] =>/var D) (D2: M' => M') (=>/var D). + +- : subst + ([x][dx: isvar x] =>/beta + (D1 x dx : M2 x => N2 x) + ([y][dy: isvar y] D1' x dx y dy : M1 x y => N1 x y)) + (D2: M' => M') + (=>/beta D3 D3' : app (lam [y] M1 M' y) (M2 M') => N1 M' (N2 M')) + <- subst D1 D2 (D3: M2 M' => N2 M') + <- ({y}{dy: isvar y} subst ([x][dx: isvar x] D1' x dx y dy) D2 + (D3' y dy : M1 M' y => N1 M' y)). + +- : subst + ([x][dx: isvar x] =>/app (D1 x dx : M1 x => N1 x) (D1' x dx : M2 x => N2 x)) + (D2: M' => M') + (=>/app D3 D3' : app (M1 M') (M2 M') => app (N1 M') (N2 M')) + <- subst D1 D2 (D3 : M1 M' => N1 M') + <- subst D1' D2 (D3' : M2 M' => N2 M'). + +- : subst + ([x][dx: isvar x] =>/lam + ([y][dy: isvar y] D1 x dx y dy : M x y => N x y)) + (D2: M' => M') + (=>/lam D3 : (lam [y] M M' y) => (lam [y] N M' y)) + <- ({y}{dy: isvar y} subst ([x][dx: isvar x] D1 x dx y dy) D2 + (D3 y dy : M M' y => N M' y)). + +%{! The `%worlds` for the metatheorem is the same `isvarb` block used in the third reformulation. !}% + +%{!! begin checked !!}% +%worlds (isvarb) (subst _ _ _). +%total T (subst T _ _). +%{!! end checked !!}% + + +%{! + +### Conclusion: the cost of losing substitution + +The third reformulation above was almost without a doubt the one most akin to the initial presentation. But the cost was that the substitution principle needed to be established separately, which requires a bit of work. + +This is sometimes the correct call: in the development of [structural focalization](/wiki/focusing/) on the wiki, there were two "focal substitution principles." It was ultimately the most convenient to balance clarity and convenience prove one of the two principles by hand (as in the third reformulation above) while letting the other be inhereted from LF's substitution principles (as in the first two reformulations above). + +## Complete development ------------------------ -G |- notlam (app M1 M2) -</pre> +Parallel reduction is non-deterministic: any left-hand term that can be reduced by the ``beta`` rule can also be reduced by the ``app`` rule, which is why the relation can be reflexive. Complete development is a restriction of parallel reduction where ``beta`` takes precedence over ``app``. In each step of complete development, all of the beta-redices in the left-hand term are reduced. + +Informally, we add a side condition to the ``app`` rule: + +```math +{ + \Gamma \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \qquad + (M \textit{ is not a lambda}) + \over + \Gamma \vdash M\,N \Rightarrow M'\,N' +}\mathit{app} +``` + + +How can we state this side condition more precisely? We need a judgement which holds whenever does not have the form . It's easy to define this as a hypothetical judgement if we choose our contexts correctly: + +```math +\Gamma ::= \cdot \mid \Gamma, x\,\mathtt{trm}, x\,\mathtt{notlam} +``` +```math +{ + x\,\mathtt{notlam} \in \Gamma + \over + \Gamma \vdash x\,\mathtt{notlam} +} +\qquad +{ + \over + \Gamma \vdash (M_1\,M_2)\,\mathtt{notlam} +} +``` That is, with each variable, we make the additional assumption that it is not a lambda. Then complete development is easy to define: -<pre> -G ::= . | G , x trm, notlam x, x ==> x - -x ==> x in G ------------- var -G |- x ==> x - -G, x trm, notlam x, x => x |- M ==> M' G |- N ==> N' ------------------------------------------------------ beta -G |- (\x.M) N ==> M'[N'/x] - -G |- M ==> M' G |- N ==> N' G |- notlam M --------------------------------------------- app -G |- (M N) ==> (M' N') - -G, x trm, notlam x, x => x |- M ==> N -------------------------------------- lam -G |- \x.M ==> \x.N -</pre> + +```math +\Gamma ::= \cdot \mid \Gamma, x\,\mathtt{trm}, x\,\mathtt{notlam}, x \Rightarrow x +``` +```math +{ + x \Rightarrow x \in \Gamma + \over + \Gamma \vdash x \Rightarrow x +}\mathit{var}_c +``` +```math +{ + \Gamma, x\,\mathtt{trm}, x\,\mathtt{notlam}, x \Rightarrow x \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \over + \Gamma \vdash (\lambda x.M)\,N \Rightarrow M'[N'/x] +}\mathit{beta}_c +``` +```math +{ + \Gamma \vdash M \Rightarrow M' + \qquad + \Gamma \vdash N \Rightarrow N' + \qquad + M\,\mathtt{notlam} + \over + \Gamma \vdash M\,N \Rightarrow M'\,N' +}\mathit{app}_c +``` +```math +{ + \Gamma, x\,\mathtt{trm}, x\,\mathtt{notlam}, x \Rightarrow x \vdash M \Rightarrow M' + \over + \Gamma \vdash \lambda x.M \Rightarrow \lambda x.M' +}\mathit{lam}_c +``` The LF representation is direct: !}% @@ -259,8 +557,6 @@ notlam/app : notlam (app _ _). Then complete development is a simple twist on parallel reduction: !}% -%{! (options removed from twelftag: check="true") !}% - ==> : trm -> trm -> type. %infix none 10 ==>. ==>/beta : (app (lam M) N) ==> M' N' @@ -269,7 +565,7 @@ Then complete development is a simple twist on parallel reduction: !}% ==>/app : (app M N) ==> (app M' N') <- N ==> N' <- M ==> M' - <- notlam M. + <- notlam M. ==>/lam : lam M ==> lam M' <- ({x:trm} notlam x -> x ==> x -> M x ==> M' x). @@ -280,21 +576,40 @@ Then complete development is a simple twist on parallel reduction: !}% #### Substitution -As above, this formulation gives a "free" substitution principle for complete development: if we have a complete development derivation ``G , x trm, notlam x, x ==> x |- M ==> N`` -and ``G |- M' trm`` and ``G |- notlam M'`` and `` G |- M' ==> M'`` -then ``G |- M[M'/x] ==> N[M'/x]``. The form of the context ensures that we need a derivation of ``notlam M'`` to make this substitution: it's not obvious that you can substitute lambdas for variables while preserving complete development, since you'd have to replace instances of ``app`` with something else. +As above, this formulation gives a "free" substitution principle for complete development: + +> If \ +> and \ +> and \ +> and ,\ +> then . + +The form of the context ensures that we need a derivation of to make this substitution. This restriction is similar to the restriction that made the third reformulation's "free" substitution principle useless, but it's more reasonable in this case: it's not obvious that you can substitute lambdas for variables while preserving complete development, since you'd have to replace instances of ``app`` with something else. + +#### Examples + +We can give a few examples of parallel reduction in action using the [`%query`](/wiki/percent-query/) mechanism. + +!}% + +%{!! begin checked !!}% +%query 1 * app (lam [x] app x x) (lam [x] app x x) ==> N. +%{!! end checked !!}% + +%{!! begin checked !!}% +z = lam [f] lam [x] x. +s = lam [n] lam [f] lam [x] app f (app (app n f) x). + +%query 1 * app (app s z) (lam [f] lam [x] app f (app f x)) ==> N. +%{!! end checked !!}% + + +%{! ## See also * [Hypothetical judgement](/wiki/hypothetical-judgment/)s * [Higher-order judgement](/wiki/higher-order-judgements/)s -* The case study on [Church-Rosser via complete development](/wiki/church-rosser-via-complete-development/) for some proofs about the judgements defined here, illustrating the use of [regular world](/wiki/percent-worlds/)s. +* The case study on [Church-Rosser via complete development](/wiki/church-rosser-via-complete-development/) for some proofs about the judgements defined here, illustrating the use of [regular worlds](/wiki/percent-worlds/). -\{\{tutorial\}\} !}% - -%{! ------ -This page was copied from the MediaWiki version of the Twelf Wiki. -If anything looks wrong, you can refer to the -[wayback machine's version here](https://web.archive.org/web/20240303030303/http://twelf.org/wiki/Reformulating_languages_to_use_hypothetical_judgements). !}% diff --git a/wiki/src/assets/serverok.png b/wiki/src/assets/serverok.png new file mode 100644 index 0000000000000000000000000000000000000000..32e38942819ed372156607f72dc7c4ff170e55a8 GIT binary patch literal 142441 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 CPF|P* literal 0 HcmV?d00001 diff --git a/wiki/src/content/docs/contributing.mdx b/wiki/src/content/docs/contributing.mdx index a90bf9d8..7b5313d4 100644 --- a/wiki/src/content/docs/contributing.mdx +++ b/wiki/src/content/docs/contributing.mdx @@ -61,12 +61,15 @@ open a new page: ignore the options and click "**Create pull request**." ### Making bigger changes (running the site locally) -If you [check out the Twelf repository on -GitHub](https://github.com/standardml/twelf), you can preview the website by -running the following commands: +The only software you need to build and preview changes on your own computer is +git (so you can download the Twelf repository where this wiki lives) and +[npm](https://nodejs.org/en/download/package-manager), which facilitates +downloading the JavaScript code that powers this website. You can download the +repository and preview the website by running the following commands: ```bash -cd wiki +git clone https://github.com/standardml/twelf.git +cd twelf/wiki npm install npm run dev ```