Charlie is big. Charlie is blue. Charlie is green. Charlie is kind. Charlie is rough. Charlie is smart. Erin is blue. Erin is green. Erin is rough. Erin is smart. If something is green then it is blue. If Erin is smart then Erin is big. All kind things are big. All smart things are kind. All green things are quiet. If Charlie is green then Charlie is quiet. Kind, blue things are big. If something is quiet then it is blue.
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is smart.
("Erin" "is" "smart" "+")
If something is green then it is blue.
((("something" "is" "green" "+")) -> ("something" "is" "blue" "+"))
If Erin is smart then Erin is big.
((("Erin" "is" "smart" "+")) -> ("Erin" "is" "big" "+"))
All kind things are big.
((("something" "is" "kind" "+")) -> ("something" "is" "big" "+"))
All smart things are kind.
((("something" "is" "smart" "+")) -> ("something" "is" "kind" "+"))
All green things are quiet.
((("something" "is" "green" "+")) -> ("something" "is" "quiet" "+"))
If Charlie is green then Charlie is quiet.
((("Charlie" "is" "green" "+")) -> ("Charlie" "is" "quiet" "+"))
Kind, blue things are big.
((("something" "is" "kind" "+") ("something" "is" "blue" "+")) -> ("something" "is" "big" "+"))
If something is quiet then it is blue.
((("something" "is" "quiet" "+")) -> ("something" "is" "blue" "+"))
Charlie is kind.
True
1
proof
[(triple4 OR ((triple6) -> rule4))]
("Charlie" "is" "kind" "+")
triple4
((triple6) -> (rule4 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Erin is not green.
False
1
inv-proof
[(triple8)]
("Erin" "is" "green" "-")
triple8
Charlie is quiet.
True
2
proof
[(((triple3) -> rule5) OR ((triple3) -> rule6))]
("Charlie" "is" "quiet" "+")
((triple3) -> (rule5 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((triple3) -> (rule6 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is not quiet.
False
2
inv-proof
[(((triple3) -> rule5) OR ((triple3) -> rule6))]
("Charlie" "is" "quiet" "-")
((triple3) -> (rule5 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((triple3) -> (rule6 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
@0: Charlie is big.[(triple1 OR ((triple4) -> rule3) OR ((triple4 triple2) -> rule7) OR ((((triple6) -> rule4)) -> rule3) OR ((triple4 ((triple3) -> rule1)) -> rule7) OR ((((triple6) -> rule4) triple2) -> rule7) OR ((((triple6) -> rule4) ((triple3) -> rule1)) -> rule7) OR ((triple4 ((((triple3) -> rule5)) -> rule8)) -> rule7) OR ((triple4 ((((triple3) -> rule6)) -> rule8)) -> rule7) OR ((((triple6) -> rule4) ((((triple3) -> rule5)) -> rule8)) -> rule7) OR ((((triple6) -> rule4) ((((triple3) -> rule6)) -> rule8)) -> rule7))] Charlie is blue.[(triple2 OR ((triple3) -> rule1) OR ((((triple3) -> rule5)) -> rule8) OR ((((triple3) -> rule6)) -> rule8))] Charlie is green.[(triple3)] Charlie is kind.[(triple4 OR ((triple6) -> rule4))] Charlie is rough.[(triple5)] Charlie is smart.[(triple6)] Erin is blue.[(triple7 OR ((triple8) -> rule1) OR ((((triple8) -> rule5)) -> rule8))] Erin is green.[(triple8)] Erin is rough.[(triple9)] Erin is smart.[(triple10)] @1: Charlie is quiet.[(((triple3) -> rule5) OR ((triple3) -> rule6))] Erin is big.[(((triple10) -> rule2) OR ((((triple10) -> rule4)) -> rule3) OR ((((triple10) -> rule4) triple7) -> rule7) OR ((((triple10) -> rule4) ((triple8) -> rule1)) -> rule7) OR ((((triple10) -> rule4) ((((triple8) -> rule5)) -> rule8)) -> rule7))] Erin is kind.[(((triple10) -> rule4))] Erin is quiet.[(((triple8) -> rule5))]
Charlie is big.
("Charlie" "is" "big" "+")
triple1
((triple4) -> (rule3 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple4 triple2) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((((triple6) -> (rule4 % int2))) -> (rule3 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
((triple4 ((triple3) -> (rule1 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
((((triple6) -> (rule4 % int2)) triple2) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
((((triple6) -> (rule4 % int3)) ((triple3) -> (rule1 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
((triple4 ((((triple3) -> (rule5 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
((triple4 ((((triple3) -> (rule6 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
((((triple6) -> (rule4 % int4)) ((((triple3) -> (rule5 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
((((triple6) -> (rule4 % int4)) ((((triple3) -> (rule6 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is blue.
("Charlie" "is" "blue" "+")
triple2
((triple3) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
((((triple3) -> (rule5 % int2))) -> (rule8 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
((((triple3) -> (rule6 % int2))) -> (rule8 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
triple3
Charlie is kind.
("Charlie" "is" "kind" "+")
triple4
((triple6) -> (rule4 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
triple5
Charlie is smart.
("Charlie" "is" "smart" "+")
triple6
Erin is blue.
("Erin" "is" "blue" "+")
triple7
((triple8) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
((((triple8) -> (rule5 % int2))) -> (rule8 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
triple8
Erin is rough.
("Erin" "is" "rough" "+")
triple9
Erin is smart.
("Erin" "is" "smart" "+")
triple10
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((triple3) -> (rule5 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((triple3) -> (rule6 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
((triple10) -> (rule2 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((triple10) -> (rule4 % int2))) -> (rule3 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
((((triple10) -> (rule4 % int2)) triple7) -> (rule7 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
((((triple10) -> (rule4 % int3)) ((triple8) -> (rule1 % int2))) -> (rule7 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is kind.
("Erin" "is" "kind" "+")
int3
((((triple10) -> (rule4 % int4)) ((((triple8) -> (rule5 % int3))) -> (rule8 % int2))) -> (rule7 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is quiet.
("Erin" "is" "quiet" "+")
int3
Erin is kind.
("Erin" "is" "kind" "+")
int4
Erin is kind.
("Erin" "is" "kind" "+")
((triple10) -> (rule4 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
((triple8) -> (rule5 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1