Charlie is round. Charlie is smart. Erin is cold. Erin is nice. Erin is round. Erin is white. Gary is green. Gary is round. Gary is white. Harry is cold. Harry is green. Harry is nice. Harry is round. Harry is smart. Harry is white. Smart people are cold. If someone is cold then they are white. White, round people are nice.
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is round.
("Erin" "is" "round" "+")
Erin is white.
("Erin" "is" "white" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is white.
("Gary" "is" "white" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is smart.
("Harry" "is" "smart" "+")
Harry is white.
("Harry" "is" "white" "+")
Smart people are cold.
((("someone" "is" "smart" "+")) -> ("someone" "is" "cold" "+"))
If someone is cold then they are white.
((("someone" "is" "cold" "+")) -> ("someone" "is" "white" "+"))
White, round people are nice.
((("someone" "is" "white" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "nice" "+"))
Gary is round.
True
1
proof
[(triple8)]
("Gary" "is" "round" "+")
triple8
Harry is not smart.
False
1
inv-proof
[(triple14)]
("Harry" "is" "smart" "-")
triple14
Gary is nice.
True
3
proof
[(((triple9 triple8) -> rule3))]
("Gary" "is" "nice" "+")
((triple9 triple8) -> (rule3 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Charlie is not cold.
False
2
inv-proof
[(((triple2) -> rule1))]
("Charlie" "is" "cold" "-")
((triple2) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is white.
True
3
proof
[(((((triple2) -> rule1)) -> rule2))]
("Charlie" "is" "white" "+")
((((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is not white.
False
3
inv-proof
[(((((triple2) -> rule1)) -> rule2))]
("Charlie" "is" "white" "-")
((((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is nice.
True
5
proof
[(((((((triple2) -> rule1)) -> rule2) triple1) -> rule3))]
("Charlie" "is" "nice" "+")
((((((triple2) -> (rule1 % int3))) -> (rule2 % int2)) triple1) -> (rule3 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is not nice.
False
5
inv-proof
[(((((((triple2) -> rule1)) -> rule2) triple1) -> rule3))]
("Charlie" "is" "nice" "-")
((((((triple2) -> (rule1 % int3))) -> (rule2 % int2)) triple1) -> (rule3 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Gary is not cold.
Unknown
inv-rconc
[@1: Gary is cold.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "cold" "-")
Erin is green.
Unknown
random
[@0: Erin is green.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "green" "+")
Charlie is not green.
Unknown
inv-random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "-")
Harry is big.
Unknown
random
[@0: Harry is big.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "big" "+")
Erin is not big.
Unknown
inv-random
[@0: Erin is big.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "big" "-")
Gary is big.
Unknown
random
[@0: Gary is big.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "big" "+")
Charlie is not big.
Unknown
inv-random
[@0: Charlie is big.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "big" "-")
Erin is smart.
Unknown
random
[@0: Erin is smart.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "smart" "+")
@0: Charlie is round.[(triple1)] Charlie is smart.[(triple2)] Erin is cold.[(triple3)] Erin is nice.[(triple4 OR ((triple6 triple5) -> rule3) OR ((((triple3) -> rule2) triple5) -> rule3))] Erin is round.[(triple5)] Erin is white.[(triple6 OR ((triple3) -> rule2))] Gary is green.[(triple7)] Gary is round.[(triple8)] Gary is white.[(triple9)] Harry is cold.[(triple10 OR ((triple14) -> rule1))] Harry is green.[(triple11)] Harry is nice.[(triple12 OR ((triple15 triple13) -> rule3) OR ((((triple10) -> rule2) triple13) -> rule3) OR ((((((triple14) -> rule1)) -> rule2) triple13) -> rule3))] Harry is round.[(triple13)] Harry is smart.[(triple14)] Harry is white.[(triple15 OR ((triple10) -> rule2) OR ((((triple14) -> rule1)) -> rule2))] @1: Charlie is cold.[(((triple2) -> rule1))] Gary is nice.[(((triple9 triple8) -> rule3))] @2: Charlie is white.[(((((triple2) -> rule1)) -> rule2))] @3: Charlie is nice.[(((((((triple2) -> rule1)) -> rule2) triple1) -> rule3))]
Charlie is round.
("Charlie" "is" "round" "+")
triple1
Charlie is smart.
("Charlie" "is" "smart" "+")
triple2
Erin is cold.
("Erin" "is" "cold" "+")
triple3
Erin is nice.
("Erin" "is" "nice" "+")
triple4
((triple6 triple5) -> (rule3 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
((((triple3) -> (rule2 % int2)) triple5) -> (rule3 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
triple5
Erin is white.
("Erin" "is" "white" "+")
triple6
((triple3) -> (rule2 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
triple7
Gary is round.
("Gary" "is" "round" "+")
triple8
Gary is white.
("Gary" "is" "white" "+")
triple9
Harry is cold.
("Harry" "is" "cold" "+")
triple10
((triple14) -> (rule1 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
triple11
Harry is nice.
("Harry" "is" "nice" "+")
triple12
((triple15 triple13) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
((((triple10) -> (rule2 % int2)) triple13) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((((triple14) -> (rule1 % int3))) -> (rule2 % int2)) triple13) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is cold.
("Harry" "is" "cold" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
triple13
Harry is smart.
("Harry" "is" "smart" "+")
triple14
Harry is white.
("Harry" "is" "white" "+")
triple15
((triple10) -> (rule2 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((((triple14) -> (rule1 % int2))) -> (rule2 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
((triple2) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
((triple9 triple8) -> (rule3 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
((((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
((((((triple2) -> (rule1 % int3))) -> (rule2 % int2)) triple1) -> (rule3 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3