COT 4210
Section B
© D.A. Workman
Inductive Definitions
Inductive definitions are mathematical systems for recursively defining sets.
Every inductive definition has three
components:
Definition 8.
An Inductive Definition of a set, S
, is composed of the following elements:
(a)
A basis rule
(R
0
) that declares or enumerates a finite set of initial members of S.
(b) A (possibly empty) set of inductive rules
, R
1
, R
2
, …, R
n
, that describe how to construct potentially new
members of S, from known or existing members of S.
Each inductive rule has the form:
if P(x) then f(x)
⊆
S;
where P(x) is a predicate that selects an existing member (x) of S
to use in the generation of new members of
S by applying the setvalue function f; that is, f(x)
∈
2
S
( "2
S
" denotes the "power set of S" and is the set of all
subsets of S ).
An inductive rule is wellformed if f(x) is a finite set.
(c)
A closure rule that always states, "Nothing is a member of S that cannot gain its membership by a finite
sequence of rules taken from: R
0
{ R
1
, R
2
, …, R
n
}*.
The purpose of the closure rule is to explicitly exclude anything that cannot be obtained by applying some number
of inductive rules to the basis elements.
An inductive definition is proper, or wellformed, only if a single
application of each rule enlarges membership by a finite set
.
Thus the basis rule can initially declare only a finite
subset of S, and a single application of each inductive rule can only generate a finite set of new members.
Notation
If a set S is being defined inductively, then we define S
k
, k
≥
0, to be the subset of S generated by applying no
more than k inductive rules.
S
0
= { x  x
∈
S by R
0
(the basis rule) } and S
k+1
= S
k
∪
{ y 
y
∈
R
j
(x), for some
x
∈
S
k
and some inductive rule R
j
.
Note:
R
j
(x) =
Φ
, if the predicate P
j
(x) does not hold ; R
j
(x) = f
j
(x), otherwise.}
Example 6
.
Define L = { (ab)
n

n
≥0
}.
What we want to do is give an equivalent inductive definition of L.
This will be
done in two steps.
First we will give an inductive definition of some language, call it L'.
Then we will formally
prove that L = L'.
Inductive Definition of L':
R
0
:
λ∈
L'
(basis rule)
R
1
:
If
x
∈
L'
then
xab
∈
L'. (inductive rule)
Closure rule:
Nothing belongs to L' that cannot be admitted to L' by applying some sequence of rules in R
0
{R
1
}*
Theorem
L = L'.
Proof
.
We give the proof in two parts.
First we prove a lemma which identifies an important property of L'.
Then we
complete the proof by applying the lemma to establish our main result.
Lemma 1:
For all n
≥0
,
L'
n
= { (ab)
k

0
≤
k
≤
n }.
Proof
of
lemma
.
We prove this result by induction on n.
Case (n = 0).
L'
0
= { x  x
∈
L' by R
0
(the basis rule) } = {
λ
}
by the definition of Inductive Definition & the definition
of L'.
Now, for n = 0, { (ab)
k

0
≤
k
≤
n } = { (ab)
k

0
≤
k
≤
0
} = { (ab)
0
} = {
λ
}.
This latter
statement follows by definition of stringtoapower.
Thus the lemma holds for n = 0.