beta-normal forms and ARSs.
parent
50ec869da9
commit
b9b680585e
|
@ -180,7 +180,7 @@
|
|||
"_journal/2024-02-02.md": "a3b222daee8a50bce4cbac699efc7180",
|
||||
"_journal/2024-02-01.md": "3aa232387d2dc662384976fd116888eb",
|
||||
"_journal/2024-01-31.md": "7c7fbfccabc316f9e676826bf8dfe970",
|
||||
"logic/equiv-trans.md": "c52d0907d35d7a3c2e4576f2bd411257",
|
||||
"logic/equiv-trans.md": "64b6110fdfb3d2c254de6d2dc6d7f312",
|
||||
"_journal/2024-02-07.md": "8d81cd56a3b33883a7706d32e77b5889",
|
||||
"algorithms/loop-invariants.md": "cbefc346842c21a6cce5c5edce451eb2",
|
||||
"algorithms/loop-invariant.md": "3b390e720f3b2a98e611b49a0bb1f5a9",
|
||||
|
@ -256,7 +256,7 @@
|
|||
"c17/strings.md": "f3cc8bd2d8c0e771079dc846d3015b42",
|
||||
"c17/index.md": "78576ee41d0185df82c59999142f4edb",
|
||||
"c17/escape-sequences.md": "a8b99070336878b4e8c11e9e4525a500",
|
||||
"c17/declarations.md": "3ed374b028112c554bb4ee96f9f65231",
|
||||
"c17/declarations.md": "ab6d44e48b0c1c8d98cd409721cc2c53",
|
||||
"algorithms/sorting/merge-sort.md": "6506483f7df6507cee0407bd205dbedd",
|
||||
"_journal/2024-02-24.md": "9bb319d5014caf962a9ce3141076cff4",
|
||||
"_journal/2024-02/2024-02-23.md": "0aad297148e8cc4058b48b7e45787ca7",
|
||||
|
@ -413,7 +413,7 @@
|
|||
"programming/index.md": "bb082325e269a95236aa6aff9307fe59",
|
||||
"_journal/2024-04-30.md": "369f98b9d91de89cc1f4f581bc530c0d",
|
||||
"_journal/2024-04/2024-04-29.md": "b4fa2fd62e1b4fe34c1f71dc1e9f5b0b",
|
||||
"proofs/induction.md": "d7f456e0a696fa89198bbf6661a5f616",
|
||||
"proofs/induction.md": "25b195c80df87aac399cf1234389ef9e",
|
||||
"proofs/index.md": "51a7bc4e30b7a6cc0d4c5712ad603448",
|
||||
"_journal/2024-05-01.md": "959ff67fe3db585ba6a7b121d853bbac",
|
||||
"_journal/2024-05-02.md": "d7d6ba7e065d807986f0bd77281c0bb1",
|
||||
|
@ -512,8 +512,8 @@
|
|||
"_journal/2024-06/2024-06-06.md": "db3407dcc86fa759b061246ec9fbd381",
|
||||
"_journal/2024-06-08.md": "b20d39dab30b4e12559a831ab8d2f9b8",
|
||||
"_journal/2024-06/2024-06-07.md": "c6bfc4c1e5913d23ea7828a23340e7d3",
|
||||
"lambda-calculus/alpha-conversion.md": "e87b499517c2471cae4717703ca3aba0",
|
||||
"lambda-calculus/index.md": "756c93b8717fd00b04f8a99509066486",
|
||||
"lambda-calculus/alpha-conversion.md": "5fd232190961830498348fc6137e881a",
|
||||
"lambda-calculus/index.md": "64efe9e4f6036d3f5b4ec0dc8cd3e7b9",
|
||||
"x86-64/instructions/condition-codes.md": "56ad6eb395153609a1ec51835925e8c9",
|
||||
"x86-64/instructions/logical.md": "818428b9ef84753920dc61e5c2de9199",
|
||||
"x86-64/instructions/arithmetic.md": "271218d855e7291f119f96e91f582738",
|
||||
|
@ -536,7 +536,7 @@
|
|||
"set/functions.md": "9fc813971de5fdda7aaac0cf91a721ad",
|
||||
"_journal/2024-06-15.md": "92cb8dc5c98e10832fb70c0e3ab3cec4",
|
||||
"_journal/2024-06/2024-06-14.md": "5d12bc272238ac985a1d35d3d63ea307",
|
||||
"lambda-calculus/beta-reduction.md": "aa1b302755cde85085abedbde85161df",
|
||||
"lambda-calculus/beta-reduction.md": "7d001ad86d3fd77a83c0df99bcc2597b",
|
||||
"_journal/2024-06-16.md": "ded6ab660ecc7c3dce3afd2e88e5a725",
|
||||
"_journal/2024-06/2024-06-15.md": "c3a55549da9dfc2770bfcf403bf5b30b",
|
||||
"_journal/2024-06-17.md": "63df6757bb3384e45093bf2b9456ffac",
|
||||
|
@ -550,8 +550,10 @@
|
|||
"startups/fundraising.md": "a8ba72cc16941a91f2367e96114daf15",
|
||||
"_journal/2024-06-20.md": "e67a8832003f0eb286dc6b5d6a916494",
|
||||
"_journal/2024-06/2024-06-19.md": "363852585ef0c6e7e8ee250b3ec7fc38",
|
||||
"_journal/2024-06-21.md": "54dabfa53a12e0ffd4df319978401903",
|
||||
"_journal/2024-06/2024-06-20.md": "12d4d8cc2f6dfa37b8d2c09095c5e636"
|
||||
"_journal/2024-06-21.md": "12e37e2c57abab09c781b32793fbbe1a",
|
||||
"_journal/2024-06/2024-06-20.md": "12d4d8cc2f6dfa37b8d2c09095c5e636",
|
||||
"_journal/2024-06-22.md": "c389e4a19d3c498f68cabb1e84bc3213",
|
||||
"programming/ars.md": "70cfc820968cc24d9f0198bc98f5f9a2"
|
||||
},
|
||||
"fields_dict": {
|
||||
"Basic": [
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
title: "2024-06-22"
|
||||
---
|
||||
|
||||
- [x] Anki Flashcards
|
||||
- [x] KoL
|
||||
- [x] OGS
|
||||
- [ ] Sheet Music (10 min.)
|
||||
- [ ] Korean (Read 1 Story)
|
||||
|
||||
* Notes on [[beta-reduction#Normal Form|β-normal forms]].
|
||||
* Very basic notes on [[ars|abstract rewriting systems]].
|
|
@ -212,7 +212,7 @@ END%%
|
|||
|
||||
## Integer Literals
|
||||
|
||||
Negative integer literals are typed in a counterintuitive way. When the compiler sees a number of form `-X`, the type of `X` is first determined *before* then being negated. Promotion rules are as follows:
|
||||
Negative integer literals are typed in a counterintuitive way. When the compiler sees a number of form `-X`, the type of `X` is determined *before* being negated. Promotion rules are as follows:
|
||||
|
||||
Decimal | Other Bases
|
||||
----------- | --------------------
|
||||
|
|
|
@ -20,6 +20,13 @@ Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combi
|
|||
<!--ID: 1717687744134-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Cloze
|
||||
$P \equiv Q$ is to {equivalent} whereas $P \equiv_\alpha Q$ is to {congruent}.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065602220-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What two ways can we pronounce $P \equiv_\alpha Q$?
|
||||
|
|
|
@ -167,6 +167,105 @@ Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combi
|
|||
<!--ID: 1718475424868-->
|
||||
END%%
|
||||
|
||||
## Normal Form
|
||||
|
||||
A term $Q$ which contains no $\beta$-redexes is called a **$\beta$-normal form** (or a **term in $\beta$-normal form** or just a **$\beta$-nf**). The class of all $\beta$-normal forms is called $\beta$-nf or $\lambda\beta$-nf. If a term $P$ $\beta$-reduces to a term $Q$ in $\beta$-nf, then $Q$ is called a **$\beta$-normal form of $P$**.
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
$\beta$-reduction terminates if and only if what?
|
||||
Back: We reduce to a term in $\beta$-normal form.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185793-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
Is $\beta$-reduction guaranteed to terminate?
|
||||
Back: No.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185796-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
Is $\beta$-reduction guaranteed to simplify?
|
||||
Back: No.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185803-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
How is a $\beta$-normal form defined?
|
||||
Back: As a $\lambda$-term that contains no $\beta$-redexes.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185808-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Cloze
|
||||
The class of {all $\beta$-normal forms} is called {$\beta$-nf/$\lambda\beta$-nf}.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185812-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What ambiguity does term "$\beta$-nf" introduce?
|
||||
Back: It refers to a specific $\beta$-normal form or the class of $\beta$-normal forms.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185815-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What does it mean for term $Q$ to be a $\beta$-normal form of term $P$?
|
||||
Back: $P$ $\beta$-reduces to a term $Q$ in $\beta$-nf.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185819-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
How is the class $\beta$-nf alternatively denoted?
|
||||
Back: As $\lambda\beta$-nf.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185823-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
How is the class $\lambda\beta$-nf alternatively denoted?
|
||||
Back: As $\beta$-nf.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185799-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What is the $\beta$-normal form of $(\lambda x. x(xy))N$?
|
||||
Back: $N(Ny)$
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065602204-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What is the $\beta$-normal form of $(\lambda x. xx)(\lambda x. xx)$?
|
||||
Back: N/A.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065602211-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
How many $\beta$-reductions can a term have?
|
||||
Back: One or more.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065602215-->
|
||||
END%%
|
||||
|
||||
## Bibliography
|
||||
|
||||
* Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
|
@ -777,6 +777,22 @@ Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combi
|
|||
<!--ID: 1717036717102-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
Is $(\lambda x. xy)N \equiv Ny$?
|
||||
Back: No.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185785-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
Is $[N/x]xy \equiv Ny$?
|
||||
Back: Yes.
|
||||
Reference: Hindley, J Roger, and Jonathan P Seldin. “Lambda-Calculus and Combinators, an Introduction,” n.d. [https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf](https://www.cin.ufpe.br/~djo/files/Lambda-Calculus%20and%20Combinators.pdf).
|
||||
<!--ID: 1719065185789-->
|
||||
END%%
|
||||
|
||||
For all $\lambda$-terms $M$, $N$, and variables $x$:
|
||||
|
||||
* $[x/x]M \equiv M$
|
||||
|
|
|
@ -830,22 +830,6 @@ Reference: Gries, David. *The Science of Programming*. Texts and Monographs in
|
|||
<!--ID: 1714395640893-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
Given valid expression $(b; [i]{\circ}s{:}e)$, what is the type of $b$?
|
||||
Back: A function (an array).
|
||||
Reference: Gries, David. *The Science of Programming*. Texts and Monographs in Computer Science. New York: Springer-Verlag, 1981.
|
||||
<!--ID: 1714395640896-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
Given valid expression $(b; \epsilon{:}e)$, what is the type of $b$?
|
||||
Back: A function or scalar.
|
||||
Reference: Gries, David. *The Science of Programming*. Texts and Monographs in Computer Science. New York: Springer-Verlag, 1981.
|
||||
<!--ID: 1714395640898-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What is the base case of selector update syntax?
|
||||
|
|
|
@ -0,0 +1,65 @@
|
|||
---
|
||||
title: Abstract Rewriting Systems
|
||||
TARGET DECK: Obsidian::STEM
|
||||
FILE TAGS: ars
|
||||
tags:
|
||||
- ars
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
In an **abstract rewriting system** (ARS), an object is said to be in **normal form** if it cannot be rewritten any further, i.e. it is irreducible. An object is said to be in **canonical form** if it is presented in the "standard" representation (where "standard" is defined per field).
|
||||
|
||||
In most fields, a canoncial form specifies a *unique* representation.
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What is ARS an acronym for?
|
||||
Back: **A**bstract **R**ewriting **S**ystem.
|
||||
Reference: “Normal Form,” in _Wikipedia_, April 27, 2024, [https://en.wikipedia.org/w/index.php?title=Normal_form](https://en.wikipedia.org/w/index.php?title=Normal_form_(abstract_rewriting)&oldid=1221094193).
|
||||
<!--ID: 1719067812812-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
Canonical/normal forms are associated with what general class of abstract systems?
|
||||
Back: Abstract rewriting systems.
|
||||
Reference: “Canonical Form,” in _Wikipedia_, January 7, 2024, [https://en.wikipedia.org/w/index.php?title=Canonical_form](https://en.wikipedia.org/w/index.php?title=Canonical_form&oldid=1194093963).
|
||||
<!--ID: 1719067812820-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What does it mean for an object to be in normal form?
|
||||
Back: It cannot be rewritten any further, i.e. it is irreducible.
|
||||
Reference: Normal Form,” in _Wikipedia_, April 27, 2024, [https://en.wikipedia.org/w/index.php?title=Normal_form](https://en.wikipedia.org/w/index.php?title=Normal_form_(abstract_rewriting)&oldid=1221094193).
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What does it mean for an object to be in canonical form?
|
||||
Back: It is presented in the "standard" way with respect to the field its presented in.
|
||||
Reference: “Canonical Form,” in _Wikipedia_, January 7, 2024, [https://en.wikipedia.org/w/index.php?title=Canonical_form](https://en.wikipedia.org/w/index.php?title=Canonical_form&oldid=1194093963).
|
||||
<!--ID: 1719067812824-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
What two assumptions are usually associated with an object in canonical form?
|
||||
Back: It is as simply represented as possible and it is uniquely identifying.
|
||||
Reference: “Canonical Form,” in _Wikipedia_, January 7, 2024, [https://en.wikipedia.org/w/index.php?title=Canonical_form](https://en.wikipedia.org/w/index.php?title=Canonical_form&oldid=1194093963).
|
||||
<!--ID: 1719067812829-->
|
||||
END%%
|
||||
|
||||
%%ANKI
|
||||
Basic
|
||||
How do "canonical" and "normal" forms differ in most fields?
|
||||
Back: The former usually specifies a unique representation for the object.
|
||||
Reference: “Canonical Form,” in _Wikipedia_, January 7, 2024, [https://en.wikipedia.org/w/index.php?title=Canonical_form](https://en.wikipedia.org/w/index.php?title=Canonical_form&oldid=1194093963).
|
||||
<!--ID: 1719067812833-->
|
||||
END%%
|
||||
|
||||
## Bibliography
|
||||
|
||||
* “Canonical Form,” in _Wikipedia_, January 7, 2024, [https://en.wikipedia.org/w/index.php?title=Canonical_form](https://en.wikipedia.org/w/index.php?title=Canonical_form&oldid=1194093963).
|
||||
* Normal Form,” in _Wikipedia_, April 27, 2024, [https://en.wikipedia.org/w/index.php?title=Normal_form](https://en.wikipedia.org/w/index.php?title=Normal_form_(abstract_rewriting)&oldid=1221094193).
|
|
@ -119,7 +119,7 @@ END%%
|
|||
|
||||
%%ANKI
|
||||
Basic
|
||||
What contradiction is introduced to explain why the strong induction assumption is valid?
|
||||
What negation is introduced to explain why the strong induction assumption is valid?
|
||||
Back: If $P(n)$ is not true for all $n$, there exists a *first* $n_0$ for which $\neg P(n_0)$.
|
||||
Reference: Oscar Levin, *Discrete Mathematics: An Open Introduction*, 3rd ed., n.d., [https://discrete.openmathbooks.org/pdfs/dmoi3-tablet.pdf](https://discrete.openmathbooks.org/pdfs/dmoi3-tablet.pdf).
|
||||
<!--ID: 1714574131963-->
|
||||
|
|
Loading…
Reference in New Issue