Assignment 4
Due on Oct 23 before lecture.
Please bring a hardcopy of your solutions to lecture. Or submit a hardcopy
of your solutions to Paul Darga before lecture.
Problem 1 (6 Points)
Consider the language of boolean and arithmetic expressions discussed in
class (Figures 3-1 and 3-2 in the Pierce book). Suppose we add a new
syntactic form:
Suppose we also add new evaluation rules:
-
t1 ---> t1'
-------------------------
double t1 ---> double t1'
-
double 0 ---> 0
-
double (succ nv1) ---> succ (succ (double nv1))
Which of the theorems discussed in class (Theorems 3.5.4, 3.5.7, 3.5.8,
3.5.11, 3.5.12 in the Pierce book) remain valid?
If a theorem is no longer valid, then present a counter example.
If a theorem is still valid but its proof is different, then present the
new proof.
(Note that the Pierce book contains proofs of these theorems for the
original language. You do not have to reproduce these proofs. Just show
the portions of the proofs that are different now.)
Problem 2 (3 Points)
Consider the language of boolean and arithmetic expressions discussed in
class (Figures 3-1 and 3-2 in the Pierce book). Suppose we add a new
evaluation rule:
Which of the theorems discussed in class (Theorems 3.5.4, 3.5.7, 3.5.8,
3.5.11, 3.5.12 in the Pierce book) remain valid?
If a theorem is no longer valid, then present a counter example.
If a theorem is still valid but its proof is different, then present the
new proof.
(Note that the Pierce book contains proofs of these theorems for the
original language. You do not have to reproduce these proofs. Just show
the portions of the proofs that are different now.)
Problem 3 (7 Points)
Consider the language of boolean expressions discussed in class (Figure 3-1
in the Pierce book). Suppose we add a new syntactic form:
Suppose we also add new evaluation rules:
-
and true true ---> true
-
and true false ---> false
-
and false true ---> false
-
and false false ---> false
-
t1 ---> t1'
-------------------------
and t1 t2 ---> and t1' t2
-
t2 ---> t2'
-------------------------
and t1 t2 ---> and t1 t2'
Which of the theorems discussed in class (Theorems 3.5.4, 3.5.7, 3.5.8,
3.5.11, 3.5.12 in the Pierce book) remain valid?
If a theorem is no longer valid, then present a counter example.
If a theorem is still valid but its proof is different, then present the
new proof.
(Note that the Pierce book contains proofs of these theorems for the
original language. You do not have to reproduce these proofs. Just show
the portions of the proofs that are different now.)