Charlie is green. Charlie is kind. Charlie is nice. Charlie is rough. Charlie is round. Charlie is white. Charlie is young. Fiona is green. Fiona is nice. Fiona is rough. If Fiona is kind then Fiona is nice. If Charlie is green and Charlie is round then Charlie is rough. If something is kind and round then it is green. All nice things are young. If Charlie is kind and Charlie is nice then Charlie is young. All green, white things are kind. If something is round and green then it is white. All young, green things are white.
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
If Fiona is kind then Fiona is nice.
((("Fiona" "is" "kind" "+")) -> ("Fiona" "is" "nice" "+"))
If Charlie is green and Charlie is round then Charlie is rough.
((("Charlie" "is" "green" "+") ("Charlie" "is" "round" "+")) -> ("Charlie" "is" "rough" "+"))
If something is kind and round then it is green.
((("something" "is" "kind" "+") ("something" "is" "round" "+")) -> ("something" "is" "green" "+"))
All nice things are young.
((("something" "is" "nice" "+")) -> ("something" "is" "young" "+"))
If Charlie is kind and Charlie is nice then Charlie is young.
((("Charlie" "is" "kind" "+") ("Charlie" "is" "nice" "+")) -> ("Charlie" "is" "young" "+"))
All green, white things are kind.
((("something" "is" "green" "+") ("something" "is" "white" "+")) -> ("something" "is" "kind" "+"))
If something is round and green then it is white.
((("something" "is" "round" "+") ("something" "is" "green" "+")) -> ("something" "is" "white" "+"))
All young, green things are white.
((("something" "is" "young" "+") ("something" "is" "green" "+")) -> ("something" "is" "white" "+"))
Charlie is green.
True
1
proof
[(triple1 OR ((triple2 triple5) -> rule3))]
("Charlie" "is" "green" "+")
triple1
((triple2 triple5) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is not white.
False
1
inv-proof
[(triple6 OR ((triple5 triple1) -> rule7) OR ((triple7 triple1) -> rule8) OR ((triple5 ((triple2 triple5) -> rule3)) -> rule7) OR ((triple7 ((triple2 triple5) -> rule3)) -> rule8) OR ((((triple3) -> rule4) triple1) -> rule8) OR ((((triple2 triple3) -> rule5) triple1) -> rule8) OR ((((triple3) -> rule4) ((triple2 triple5) -> rule3)) -> rule8) OR ((((triple2 triple3) -> rule5) ((triple2 triple5) -> rule3)) -> rule8))]
("Charlie" "is" "white" "-")
triple6
((triple5 triple1) -> (rule7 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
((triple7 triple1) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
((triple5 ((triple2 triple5) -> (rule3 % int2))) -> (rule7 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((triple7 ((triple2 triple5) -> (rule3 % int2))) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple3) -> (rule4 % int2)) triple1) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
((((triple2 triple3) -> (rule5 % int2)) triple1) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
((((triple3) -> (rule4 % int3)) ((triple2 triple5) -> (rule3 % int2))) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
((((triple2 triple3) -> (rule5 % int3)) ((triple2 triple5) -> (rule3 % int2))) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
@0: Charlie is green.[(triple1 OR ((triple2 triple5) -> rule3))] Charlie is kind.[(triple2 OR ((triple1 triple6) -> rule6) OR ((triple1 ((triple5 triple1) -> rule7)) -> rule6) OR ((triple1 ((triple7 triple1) -> rule8)) -> rule6) OR ((triple1 ((((triple3) -> rule4) triple1) -> rule8)) -> rule6))] Charlie is nice.[(triple3)] Charlie is rough.[(triple4 OR ((triple1 triple5) -> rule2) OR ((((triple2 triple5) -> rule3) triple5) -> rule2))] Charlie is round.[(triple5)] Charlie is white.[(triple6 OR ((triple5 triple1) -> rule7) OR ((triple7 triple1) -> rule8) OR ((triple5 ((triple2 triple5) -> rule3)) -> rule7) OR ((triple7 ((triple2 triple5) -> rule3)) -> rule8) OR ((((triple3) -> rule4) triple1) -> rule8) OR ((((triple2 triple3) -> rule5) triple1) -> rule8) OR ((((triple3) -> rule4) ((triple2 triple5) -> rule3)) -> rule8) OR ((((triple2 triple3) -> rule5) ((triple2 triple5) -> rule3)) -> rule8))] Charlie is young.[(triple7 OR ((triple3) -> rule4) OR ((triple2 triple3) -> rule5) OR ((((triple1 triple6) -> rule6) triple3) -> rule5) OR ((((triple1 ((triple5 triple1) -> rule7)) -> rule6) triple3) -> rule5))] Fiona is green.[(triple8)] Fiona is nice.[(triple9)] Fiona is rough.[(triple10)] @1: Fiona is young.[(((triple9) -> rule4))] @2: Fiona is white.[(((((triple9) -> rule4) triple8) -> rule8))] @3: Fiona is kind.[(((triple8 ((((triple9) -> rule4) triple8) -> rule8)) -> rule6))]
Charlie is green.
("Charlie" "is" "green" "+")
triple1
((triple2 triple5) -> (rule3 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
triple2
((triple1 triple6) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
((triple1 ((triple5 triple1) -> (rule7 % int2))) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
((triple1 ((triple7 triple1) -> (rule8 % int2))) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
((triple1 ((((triple3) -> (rule4 % int3)) triple1) -> (rule8 % int2))) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
triple3
Charlie is rough.
("Charlie" "is" "rough" "+")
triple4
((triple1 triple5) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
((((triple2 triple5) -> (rule3 % int2)) triple5) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
triple5
Charlie is white.
("Charlie" "is" "white" "+")
triple6
((triple5 triple1) -> (rule7 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
((triple7 triple1) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
((triple5 ((triple2 triple5) -> (rule3 % int2))) -> (rule7 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((triple7 ((triple2 triple5) -> (rule3 % int2))) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple3) -> (rule4 % int2)) triple1) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
((((triple2 triple3) -> (rule5 % int2)) triple1) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
((((triple3) -> (rule4 % int3)) ((triple2 triple5) -> (rule3 % int2))) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
((((triple2 triple3) -> (rule5 % int3)) ((triple2 triple5) -> (rule3 % int2))) -> (rule8 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is young.
("Charlie" "is" "young" "+")
triple7
((triple3) -> (rule4 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
((triple2 triple3) -> (rule5 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
((((triple1 triple6) -> (rule6 % int2)) triple3) -> (rule5 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
((((triple1 ((triple5 triple1) -> (rule7 % int3))) -> (rule6 % int2)) triple3) -> (rule5 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is white.
("Charlie" "is" "white" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
triple8
Fiona is nice.
("Fiona" "is" "nice" "+")
triple9
Fiona is rough.
("Fiona" "is" "rough" "+")
triple10
Fiona is young.
("Fiona" "is" "young" "+")
((triple9) -> (rule4 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((((triple9) -> (rule4 % int2)) triple8) -> (rule8 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple8 ((((triple9) -> (rule4 % int3)) triple8) -> (rule8 % int2))) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3