Crypto Exhaustive Short Form Order 5 Demo

Welcome to SWI-Prolog (threaded, 64 bits, version 8.0.3) SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software. Please run ?- license. for legal details. For online help and background, visit http://www.swi-prolog.org For built-in help, use ?- help(Topic). or ?- apropos(Word). ?- consult(crypto_2345_short). true. ?- test5(25). problem(numbers(5,0,3,5,0),goal(3)) --> ex(ex(3,+,ex(5,+,0)),-,ex(0,+,5)) problem(numbers(4,2,1,4,1),goal(3)) --> ex(ex(1,+,ex(4,+,2)),-,ex(1,*,4)) problem(numbers(3,0,0,0,3),goal(3)) --> ex(ex(3,+,0),+,ex(3,*,ex(0,+,0))) problem(numbers(3,0,5,0,2),goal(2)) --> ex(2,+,ex(ex(3,+,0),*,ex(5,*,0))) problem(numbers(0,3,2,1,3),goal(2)) --> ex(ex(ex(0,+,3),+,3),/,ex(2,+,1)) problem(numbers(0,0,5,0,2),goal(2)) --> ex(2,+,ex(ex(0,+,0),*,ex(5,+,0))) problem(numbers(0,3,2,0,0),goal(0)) --> ex(ex(2,+,0),*,ex(0,*,ex(0,+,3))) problem(numbers(0,2,0,5,2),goal(4)) --> ex(ex(0,+,5),-,ex(ex(0,+,2),/,2)) problem(numbers(0,3,5,3,4),goal(0)) --> ex(ex(ex(0,+,3),*,3),-,ex(5,+,4)) problem(numbers(4,3,4,1,1),goal(5)) --> ex(ex(1,+,ex(4,+,3)),-,ex(4,-,1)) problem(numbers(3,2,2,1,5),goal(4)) --> ex(ex(2,+,1),+,ex(ex(3,+,2),/,5)) problem(numbers(1,2,2,4,1),goal(1)) --> ex(ex(ex(2,+,4),/,ex(1,+,2)),-,1) problem(numbers(0,0,1,3,5),goal(0)) --> ex(ex(1,+,3),*,ex(5,*,ex(0,+,0))) problem(numbers(1,1,4,3,0),goal(3)) --> ex(ex(4,-,3),+,ex(0,+,ex(1,+,1))) problem(numbers(2,4,5,4,2),goal(2)) --> ex(ex(ex(2,+,4),/,2),-,ex(5,-,4)) problem(numbers(0,0,1,3,1),goal(2)) --> ex(ex(1,*,3),-,ex(1,+,ex(0,+,0))) problem(numbers(4,3,1,4,5),goal(0)) --> ex(ex(4,+,3),*,ex(ex(1,+,4),-,5)) problem(numbers(0,0,5,3,2),goal(5)) --> ex(ex(5,+,ex(0,+,0)),*,ex(3,-,2)) problem(numbers(1,5,1,0,4),goal(1)) --> ex(ex(ex(1,+,5),-,4),-,ex(1,+,0)) problem(numbers(3,0,3,5,2),goal(2)) --> ex(ex(ex(3,+,0),+,5),-,ex(2,*,3)) problem(numbers(4,2,4,4,2),goal(1)) --> ex(ex(2,+,ex(4,+,2)),/,ex(4,+,4)) problem(numbers(4,4,4,3,1),goal(0)) --> ex(ex(4,+,3),+,ex(1,-,ex(4,+,4))) problem(numbers(4,0,0,2,3),goal(3)) --> ex(ex(0,+,2),-,ex(3,-,ex(4,+,0))) problem(numbers(4,5,0,3,2),goal(4)) --> ex(ex(ex(4,+,5),-,2),-,ex(0,+,3)) problem(numbers(2,2,4,0,3),goal(5)) --> ex(ex(ex(2,+,2),+,0),-,ex(3,-,4)) true . ?- halt.