Solutions to Exercises
Visual .net ecc200 printer for .netgenerate, create ecc200 none for .net projects
0 = 0 {
.net Vs 2010 barcode data matrix decoder on .netUsing Barcode recognizer for .net framework Control to read, scan read, scan image in .net framework applications.
true .
Bar Code reader on .netUsing Barcode scanner for visual .net Control to read, scan read, scan image in visual .net applications.
reflexivity of equality }
Bar Code generating in .netuse .net vs 2010 barcode drawer toreceive barcode in .net
Induction Step:
Encode gs1 datamatrix barcode with visual c#.netusing barcode encoder for visual .net control to generate, create barcode data matrix image in visual .net applications.
(Ek: l
Control data matrix 2d barcode image for .netusing barcode implement for web control to generate, create ecc200 image in web applications.
:k2) = i
Control data matrix ecc200 image on vb.netuse .net framework data matrix barcode integrated toget datamatrix 2d barcode with vb
range splitting, arithmetic } ) + (n+l) 2 - |(n+l)(n+2)(2n ^k^nik2} = n(n+l)(2n + assume that
~n(n+l)(2n
Ean13+5 generation on .netuse .net vs 2010 ean-13 supplement 2 integration toinsert ean-13 supplement 5 with .net
true .
Bar Code generator with .netgenerate, create bar code none with .net projects
i(n+l)(n+2)(2n + 3
Visual Studio .NET Crystal data matrix 2d barcode encoding on .netusing barcode generating for .net crystal control to generate, create data matrix ecc200 image in .net crystal applications.
arithmetic and reflexivity of equality }
Visual .net Crystal issn integrated in .netuse vs .net crystal international standard serial number integration todisplay issn in .net
(b) Basis:
Control barcode code 128 size with .net c#to insert code128b and barcode code 128 data, size, image with .net c# barcode sdk
) = |0 2 (0+1) 2
Control ean13+2 image on visual c#use vs .net european article number 13 implementation tocreate gtin - 13 for .net c#
one-point rule to simplify the summation, arithmetic }
0 = 0 = {
true .
Attach 2d barcode on javausing barcode drawer for java control to generate, create 2d matrix barcode image in java applications.
arithmetic and reflexivity of equality }
Qr Barcode barcode library for visual basic.netusing visual studio .net (winforms) crystal toproduce qr-codes for asp.net web,windows application
Induction Step:
Control upc code size with javato make ucc - 12 and upc-a data, size, image with java barcode sdk
range splitting, arithmetic } assume that
Control uss code 128 data for .netto display code-128c and code-128c data, size, image with .net barcode sdk
l ^ k ^ n : k 3 ) + (n+l) 3 = |(n+l) 2 (n+2) 2 ( Z k : l ^ k ^ n : k 3 ) = |n 2 (n+l) 2 . |n 2 (n+l) 2 + (n+1) 3 = |(n+l) 2 (n+2) 2 arithmetic and reflexivity of equality }
true .
Solutions to Exercises
(c) Basis:
v o+i
x-l one-point rule to simplify the summation,
arithmetic }
x * i, arithmetic and reflexivity of equality } true . Induction Step:
x-l range splitting, arithmetic
,n+l _
v n+2
:xk) =
assume that
x-l -1 x-l arithmetic and reflexivity of equality }
n+l + X
true (d) Basis:
1 + Oxx
arithmetic }
true Induction Step: l + (n+l)xx transitivity of ^ (heading towards using the induction hypothesis, we introduce the middle term
nxx) ) }
nxx) ^ 1 + (n+l)xx assume that (l+x) n ^ 1 + nxx . x > - 1, so 1 +x > 0. Multiplication by a positive
Solutions to Exercises
number is monotonic. That is, nxx) ^ l + (n+l)xx { { true . (e) Basis: : -r i- \ - -^kx(k+l)/ 0+1 empty-range rule to simplify the summation, arithmetic on the right side } true . Induction Step: kx(k+l) range splitting }
arithmetic
1 + x + nxx + nxx ^ 1 + x + nxx nxx2 ^ 0. Addition is monotonic. }
* ! 1 '
, , ,. \ /
assume that
-. .
kx(k+l)/ n n+1 n+1 (n+l)x(n+2) n+2 { arithmetic and reflexMty of equality }
true .
(f) Basis: empty-range rule to simplify the summation, arithmetic }
0 = 0 {
true .
reflexivity of equality }
312 Induction Step: 'zfcil^fc { range splitting }
Solutions to Exercises
2n+i
.
assume that
n+2 2n {
true .
n+l _ n+3 ~~ 2 n+1 ~~ 2 n+1 arithmetic and reflexivity of equality }
Solution 12.13. Basis: the basis is the case n = 1. This is because there are individual definitions of F.O and F.I. We have F.(l + l ) x F . ( l - l ) - (F.I) 2
IxO-l
definition } arithmetic } arithmetic }
{ -1
(-D 1 .
Induction Step: care must be taken in the induction step when expanding the definition of F. Assuming that n ^ 1, the definitions of F. (n+2) and F.(n+l) are given by the rule F.(k+2) = F.(fc+l) + F.fe, for all k, k ^ 0. (This is not the case for the definition of F.n.) { { arithmetic } definition: F.(k+2) = F.(k+l) + F.k applied to the cases k = n and k = n-1. } (F. (n+l) + F.n) x F.n - (F.n + F.(n-l)) xF.(n+l) { arithmetic }
F.(n+2)xF.n - (F.(n+l)) 2
Solutions to Exercises
(F.n)2 - F.(n-l)x { -(-l) n { (-l)
assume that
F.(n+l)xF.(n-l) - (F.n)2 = (-1)" . } arithmetic and reflexivity of equality } . D D
The proof uses simple induction only. Solution 12.14. The first step is invalid in the case that n = 0.
Solution 13.13. To verify the correctness of the initialization, we must verify the Hoare triple
fc,5 := JV.O
{ (Kk^iV A sxXk = (Zi:k^i By the assignment axiom, this reduces to
=> CKAKAT A OxXN =
This is true by virtue of the empty-range rule (since N < i < N is false) and simple properties of arithmetic. The termination condition is valid if ( K f c ^ N A sxXk = (I.i:k^i<N:a[i]xXi) => 5 = ( E i : Q ^ i < N : a [ i ] x X i } . D A -.(fe>0)
This is clearly true as 0 < k < N A ->(fe > 0) reduces to 0 = k < N, Solution 13.15. The invariant is established by the assignment
k,y,z := M,l,X
and, when k = 0, we have
y = XM
independently of the value of z. As the reader will have seen in solving Exercise 10.21, we also have { 0 < k = K A yxzk = XM }