Charlie is quiet. Charlie is rough. Charlie is round. If something is red then it is smart. If something is smart and young then it is rough. All cold, quiet things are young. If something is round then it is smart. All red things are cold. All smart, red things are round. All quiet things are round. Smart things are cold.
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is round.
("Charlie" "is" "round" "+")
If something is red then it is smart.
((("something" "is" "red" "+")) -> ("something" "is" "smart" "+"))
If something is smart and young then it is rough.
((("something" "is" "smart" "+") ("something" "is" "young" "+")) -> ("something" "is" "rough" "+"))
All cold, quiet things are young.
((("something" "is" "cold" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "young" "+"))
If something is round then it is smart.
((("something" "is" "round" "+")) -> ("something" "is" "smart" "+"))
All red things are cold.
((("something" "is" "red" "+")) -> ("something" "is" "cold" "+"))
All smart, red things are round.
((("something" "is" "smart" "+") ("something" "is" "red" "+")) -> ("something" "is" "round" "+"))
All quiet things are round.
((("something" "is" "quiet" "+")) -> ("something" "is" "round" "+"))
Smart things are cold.
((("something" "is" "smart" "+")) -> ("something" "is" "cold" "+"))
Charlie is round.
True
1
proof
[(triple3 OR ((triple1) -> rule7))]
("Charlie" "is" "round" "+")
triple3
((triple1) -> (rule7 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is not rough.
False
1
inv-proof
[(triple2 OR ((((triple3) -> rule4) ((((((triple3) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2) OR ((((((triple1) -> rule7)) -> rule4) ((((((triple3) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2) OR ((((triple3) -> rule4) ((((((((triple1) -> rule7)) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2) OR ((((((triple1) -> rule7)) -> rule4) ((((((((triple1) -> rule7)) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2))]
("Charlie" "is" "rough" "-")
triple2
((((triple3) -> (rule4 % int4)) ((((((triple3) -> (rule4 % int4))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
((((((triple1) -> (rule7 % int5))) -> (rule4 % int4)) ((((((triple3) -> (rule4 % int4))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is round.
("Charlie" "is" "round" "+")
int5
((((triple3) -> (rule4 % int5)) ((((((((triple1) -> (rule7 % int4))) -> (rule4 % int5))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
((((((triple1) -> (rule7 % int5))) -> (rule4 % int4)) ((((((((triple1) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is round.
("Charlie" "is" "round" "+")
int5
Charlie is smart.
True
2
proof
[(((triple3) -> rule4) OR ((((triple1) -> rule7)) -> rule4))]
("Charlie" "is" "smart" "+")
((triple3) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
((((triple1) -> (rule7 % int2))) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is not smart.
False
2
inv-proof
[(((triple3) -> rule4) OR ((((triple1) -> rule7)) -> rule4))]
("Charlie" "is" "smart" "-")
((triple3) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
((((triple1) -> (rule7 % int2))) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is cold.
True
3
proof
[(((((triple3) -> rule4)) -> rule8) OR ((((((triple1) -> rule7)) -> rule4)) -> rule8))]
("Charlie" "is" "cold" "+")
((((triple3) -> (rule4 % int2))) -> (rule8 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
((((((triple1) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule8 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
Charlie is not cold.
False
3
inv-proof
[(((((triple3) -> rule4)) -> rule8) OR ((((((triple1) -> rule7)) -> rule4)) -> rule8))]
("Charlie" "is" "cold" "-")
((((triple3) -> (rule4 % int2))) -> (rule8 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
((((((triple1) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule8 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
Charlie is young.
True
5
proof
[(((((((triple3) -> rule4)) -> rule8) triple1) -> rule3) OR ((((((((triple1) -> rule7)) -> rule4)) -> rule8) triple1) -> rule3))]
("Charlie" "is" "young" "+")
((((((triple3) -> (rule4 % int3))) -> (rule8 % int2)) triple1) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
((((((((triple1) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule8 % int2)) triple1) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4
Charlie is not young.
False
5
inv-proof
[(((((((triple3) -> rule4)) -> rule8) triple1) -> rule3) OR ((((((((triple1) -> rule7)) -> rule4)) -> rule8) triple1) -> rule3))]
("Charlie" "is" "young" "-")
((((((triple3) -> (rule4 % int3))) -> (rule8 % int2)) triple1) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
((((((((triple1) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule8 % int2)) triple1) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4
@0: Charlie is quiet.[(triple1)] Charlie is rough.[(triple2 OR ((((triple3) -> rule4) ((((((triple3) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2) OR ((((((triple1) -> rule7)) -> rule4) ((((((triple3) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2) OR ((((triple3) -> rule4) ((((((((triple1) -> rule7)) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2) OR ((((((triple1) -> rule7)) -> rule4) ((((((((triple1) -> rule7)) -> rule4)) -> rule8) triple1) -> rule3)) -> rule2))] Charlie is round.[(triple3 OR ((triple1) -> rule7))] @1: Charlie is smart.[(((triple3) -> rule4) OR ((((triple1) -> rule7)) -> rule4))] @2: Charlie is cold.[(((((triple3) -> rule4)) -> rule8) OR ((((((triple1) -> rule7)) -> rule4)) -> rule8))] @3: Charlie is young.[(((((((triple3) -> rule4)) -> rule8) triple1) -> rule3) OR ((((((((triple1) -> rule7)) -> rule4)) -> rule8) triple1) -> rule3))]
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple1
Charlie is rough.
("Charlie" "is" "rough" "+")
triple2
((((triple3) -> (rule4 % int4)) ((((((triple3) -> (rule4 % int4))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
((((((triple1) -> (rule7 % int5))) -> (rule4 % int4)) ((((((triple3) -> (rule4 % int4))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is round.
("Charlie" "is" "round" "+")
int5
((((triple3) -> (rule4 % int5)) ((((((((triple1) -> (rule7 % int4))) -> (rule4 % int5))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
int5
((((((triple1) -> (rule7 % int5))) -> (rule4 % int4)) ((((((((triple1) -> (rule7 % int5))) -> (rule4 % int4))) -> (rule8 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is round.
("Charlie" "is" "round" "+")
int5
Charlie is round.
("Charlie" "is" "round" "+")
triple3
((triple1) -> (rule7 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple3) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
((((triple1) -> (rule7 % int2))) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
((((triple3) -> (rule4 % int2))) -> (rule8 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
((((((triple1) -> (rule7 % int3))) -> (rule4 % int2))) -> (rule8 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
int3
Charlie is young.
("Charlie" "is" "young" "+")
((((((triple3) -> (rule4 % int3))) -> (rule8 % int2)) triple1) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
((((((((triple1) -> (rule7 % int4))) -> (rule4 % int3))) -> (rule8 % int2)) triple1) -> (rule3 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
int4