:: FIB_FUSC semantic presentation
Lemma1:
6 + 1 = (6 * ([\(log 2,1)/] + 1)) + 1
Lemma2:
for b1 being Nat st b1 > 0 holds
( [\(log 2,b1)/] is Nat & (6 * ([\(log 2,b1)/] + 1)) + 1 > 0 )
Lemma3:
for b1, b2 being Nat st b1 = (2 * b2) + 1 & b2 > 0 holds
6 + ((6 * ([\(log 2,b2)/] + 1)) + 1) = (6 * ([\(log 2,b1)/] + 1)) + 1
Lemma4:
for b1 being Nat st b1 > 0 holds
( log 2,(2 * b1) = 1 + (log 2,b1) & log 2,(2 * b1) = (log 2,b1) + 1 )
Lemma5:
for b1, b2 being Nat st b1 = 2 * b2 & b2 > 0 holds
6 + ((6 * ([\(log 2,b2)/] + 1)) + 1) = (6 * ([\(log 2,b1)/] + 1)) + 1
Lemma6:
for b1 being Nat st b1 <> 0 holds
(6 * b1) - 4 > 0
Lemma7:
( dl. 0 <> dl. 1 & dl. 0 <> dl. 2 & dl. 0 <> dl. 3 & dl. 1 <> dl. 2 & dl. 1 <> dl. 3 & dl. 2 <> dl. 3 )
by AMI_3:52;
Lemma8:
( dl. 0 <> dl. 4 & dl. 1 <> dl. 4 & dl. 2 <> dl. 4 & dl. 3 <> dl. 4 )
by AMI_3:52;
:: deftheorem Def1 defines Fib_Program FIB_FUSC:def 1 :
theorem Th1: :: FIB_FUSC:1
:: deftheorem Def2 defines Fusc' FIB_FUSC:def 2 :
for
b1 being
Integer for
b2 being
Nat holds
(
b2 = Fusc' b1 iff ( ex
b3 being
Nat st
(
b1 = b3 &
b2 = Fusc b3 ) or (
b1 is not
Nat &
b2 = 0 ) ) );
:: deftheorem Def3 defines Fusc_Program FIB_FUSC:def 3 :
theorem Th2: :: FIB_FUSC:2
theorem Th3: :: FIB_FUSC:3
theorem Th4: :: FIB_FUSC:4
canceled;
theorem Th5: :: FIB_FUSC:5
theorem Th6: :: FIB_FUSC:6