A statement like the following: "the set F⊆N of natural numbers is the least set of natural numbers satisfying
0∈F, andn∈F⇒f(n)∈F"means that
F satisfies (1) and (2), andX⊆N also satisfies (1) and (2) then F⊆X.
In this case we say that F is inductively defined by the rules (1) and (2).
An alternative way of writing a rule is
hypothesis
----------
conclusion
The rules (1) and (2) above could then be rewritten as:
----
0∈F
n∈F
-------
f(n)∈F
The form for a rule which defines a subset S of a set X is
x1∈S, ..., xn∈S
R:-----------------
x∈S
The hypothesis is specified by the finite subset {x1, ..., xn}∈X.
The conclusion is specified by an element x∈X.
The subset S⊆X is closed under the rule
R if x∈S whenever, x1∈S, ..., xn∈S.
A subset S of a set X is inductively defined by a collection of rules R if
S is closed under each rule in RS'⊆X is also closed under each rule in R, then S⊆S'.
Inductively defined subsets are unique.
To see why, consider two subsets S1 and S2 which satisfy (1) and (2) above.
In this case S1⊆S2 and S2⊆S1, so
S1=S2.
We could also define S above as the intersection of all S'⊆X that are closed under each
rule in R.
Obviously S would also be a subset of R which is closed under each rule in R.
Given sets X1, ..., Xk,
the subsets S1⊆X1, ..., Sk⊆Xk
are inductively defined by a set of rules of the form
x1∈Si1, ..., xn∈Sin
R:---------------------
x∈Si
where i, i1, ..., in∈{1, ...,k},
x∈Xi and x1∈Xi1,
...,xn∈Xin,
provided
S1, ...,Sk are closed under each of the rules, andS'1, ...,S'k are also subsets of X1,
..., Xk and are closed under the
rules, then S1⊆S'1, ...,Sk⊆Sk.As an example of an inductively defined subset, we'll construct the set of λ-terms of the λ-calculus.
The alphabet of λ-terms, Α, is defined as follows:
v0, v1, v2, ...,λ,(, ), ..
We can define the set of λ-terms, Λ⊆Α*, as follows
Variable: ------
vi∈Λ
Abstraction: M∈Λ
---------
λvi.M∈Λ
Application: M∈Λ, N∈Λ
---------
(M N)∈Λ
Suppose we have subsets S1⊆X1, ...,Sk⊆Xk
which are inductively defined by a set of rules R.
A proof that x∈Si is a finite non-empty list:
x1∈Si1, ..., xn∈Sin
such that
x∈Si is the last entry in the list, i.e., the conclusion of the proof, andxj∈Sij is the conclusion of a rule in R
all of whose hypotheses occur in the list before xj∈Sij.
Proofs can be drawn as trees or written as lists. As an example here is a proof in list form of
the claim that λv1λ.v2.v1∈Λ:
v1∈Λ [Variable rule]λv2.v1∈Λ [Abstraction rule on (1)]λv1λ.v2.v1∈Λ [Abstraction rule on (2)]
R. Burstall. Language Semantics and Implementation. Course Notes. 1994.
Copyright © 2014 Barry Watson. All rights reserved.