
  .___                   ._ ._             
  |   | ____  ____ ._____| || |  ._       
  |   |/ __ \/  _ \|  __ \ || | _| |__ 
  |   / /_/  ) <_> )  | \/ || |/_   _/   
  |___\___  /\____/|__|  |_||_|  |_|    
     /_____/                v0.8

Welcome to IgorII. 
Running IgorII in batch mode with file: tests/slow/mult-accum.bat

      [1m- - - - START SYNTHESIS WITH - - - -[0m

Targets              'mult'
Background           <none>
Simplified           True
Greedy rule-splitting False
Accumulators         True
Enhanced             False
Use paramorphisms    False
Compare rec args     AWise
DumpLog              False
Debug                False
Maximal tiers        0
Maximal loops        -1

      [1m- - - - - - - FINISHED - - - - - - -[0m

             mult         in 63168     loops
             

                 [1mHYPOTHESIS 1 of 5[0m

mult a0 a1 = fun1 a0 a1 Z
fun1 _ (Z) a1 = a1
fun1 a0 (S a1) a2 = fun1 a0 a1 (fun16 a0 (S a1) a2)
fun16 (Z) (S _) a1 = a1
fun16 (S a0) (S _) a2 = fun1 (S Z) a0 (S a2)



                 [1mHYPOTHESIS 2 of 5[0m

mult a0 a1 = fun1 a0 a1 Z
fun1 _ (Z) a1 = a1
fun1 a0 (S a1) a2 = fun1 a0 a1 (fun16 a0 (S a1) a2)
fun16 (Z) (S _) a1 = a1
fun16 (S a0) (S _) a2 = fun1 a0 (S Z) (S a2)



                 [1mHYPOTHESIS 3 of 5[0m

mult a0 a1 = fun1 a0 a1 Z
fun1 _ (Z) a1 = a1
fun1 a0 (S a1) a2 = fun1 a0 a1 (fun16 a0 (S a1) a2)
fun16 (Z) (S _) a1 = a1
fun16 (S a0) (S _) a2 = fun16 a0 (S (S Z)) (S a2)



                 [1mHYPOTHESIS 4 of 5[0m

mult a0 a1 = fun1 a0 a1 Z
fun1 _ (Z) a1 = a1
fun1 a0 (S a1) a2 = fun1 a0 a1 (fun16 a0 (S a1) a2)
fun16 (Z) (S _) a1 = a1
fun16 (S a0) (S a1) a2 = fun16 a0 (S a1) (S a2)



                 [1mHYPOTHESIS 5 of 5[0m

mult a0 a1 = fun1 a0 a1 Z
fun1 _ (Z) a1 = a1
fun1 a0 (S a1) a2 = fun1 a0 a1 (fun16 a0 (S a1) a2)
fun16 (Z) (S _) a1 = a1
fun16 (S a0) (S _) a2 = fun16 a0 (S Z) (S a2)

Testing 1. hypothesis of: 'mult'
  mult (S (S (S Z))) (S (S (S Z)))  ==  S (S (S (S (S (S (S (S (S Z))))))))

Testing 2. hypothesis of: 'mult'
  mult (S (S (S Z))) (S (S (S Z)))  ==  S (S (S (S (S (S (S (S (S Z))))))))

Testing 3. hypothesis of: 'mult'
  mult (S (S (S Z))) (S (S (S Z)))  ==  S (S (S (S (S (S (S (S (S Z))))))))

Testing 4. hypothesis of: 'mult'
  mult (S (S (S Z))) (S (S (S Z)))  ==  S (S (S (S (S (S (S (S (S Z))))))))

Testing 5. hypothesis of: 'mult'
  mult (S (S (S Z))) (S (S (S Z)))  ==  S (S (S (S (S (S (S (S (S Z))))))))

...batch processing finished.
Bye.
