Bob is green. Charlie is big. Erin is big. Erin is blue. Erin is cold. Erin is nice. Fiona is nice. Cold people are nice. Green people are round. If Fiona is rough then Fiona is nice. If someone is round then they are blue. All green, big people are nice. Round people are cold. If someone is big and cold then they are round. If someone is rough then they are big.
Bob is green.
("Bob" "is" "green" "+")
Charlie is big.
("Charlie" "is" "big" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Cold people are nice.
((("someone" "is" "cold" "+")) -> ("someone" "is" "nice" "+"))
Green people are round.
((("someone" "is" "green" "+")) -> ("someone" "is" "round" "+"))
If Fiona is rough then Fiona is nice.
((("Fiona" "is" "rough" "+")) -> ("Fiona" "is" "nice" "+"))
If someone is round then they are blue.
((("someone" "is" "round" "+")) -> ("someone" "is" "blue" "+"))
All green, big people are nice.
((("someone" "is" "green" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "nice" "+"))
Round people are cold.
((("someone" "is" "round" "+")) -> ("someone" "is" "cold" "+"))
If someone is big and cold then they are round.
((("someone" "is" "big" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "round" "+"))
If someone is rough then they are big.
((("someone" "is" "rough" "+")) -> ("someone" "is" "big" "+"))
Erin is cold.
True
1
proof
[(triple5)]
("Erin" "is" "cold" "+")
triple5
Bob is not green.
False
1
inv-proof
[(triple1)]
("Bob" "is" "green" "-")
triple1
Erin is round.
True
3
proof
[(((triple3 triple5) -> rule7))]
("Erin" "is" "round" "+")
((triple3 triple5) -> (rule7 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Bob is not round.
False
2
inv-proof
[(((triple1) -> rule2))]
("Bob" "is" "round" "-")
((triple1) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is blue.
True
3
proof
[(((((triple1) -> rule2)) -> rule4))]
("Bob" "is" "blue" "+")
((((triple1) -> (rule2 % int2))) -> (rule4 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Bob is not blue.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule4))]
("Bob" "is" "blue" "-")
((((triple1) -> (rule2 % int2))) -> (rule4 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Bob is nice.
True
4
proof
[(((((((triple1) -> rule2)) -> rule6)) -> rule1))]
("Bob" "is" "nice" "+")
((((((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is round.
("Bob" "is" "round" "+")
int3
Bob is not nice.
False
4
inv-proof
[(((((((triple1) -> rule2)) -> rule6)) -> rule1))]
("Bob" "is" "nice" "-")
((((((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is round.
("Bob" "is" "round" "+")
int3
Charlie is not blue.
Unknown
inv-rconc
[@4: Charlie is blue.[CWA. Example of deepest failure = (rule4 <- rule7 <- rule6 <- rule2 <- FAIL)]]
("Charlie" "is" "blue" "-")
Charlie is cold.
Unknown
rconc
[@2: Charlie is cold.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Charlie" "is" "cold" "+")
Fiona is not blue.
Unknown
inv-rconc
[@3: Fiona is blue.[CWA. Example of deepest failure = (rule4 <- rule7 <- rule8 <- FAIL)]]
("Fiona" "is" "blue" "-")
Charlie is round.
Unknown
rconc
[@3: Charlie is round.[CWA. Example of deepest failure = (rule7 <- rule6 <- rule2 <- FAIL)]]
("Charlie" "is" "round" "+")
Fiona is not rough.
Unknown
inv-random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "-")
Erin is rough.
Unknown
random
[@0: Erin is rough.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "rough" "+")
Erin is not green.
Unknown
inv-random
[@0: Erin is green.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "green" "-")
Bob is rough.
Unknown
random
[@0: Bob is rough.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "rough" "+")
@0: Bob is green.[(triple1)] Charlie is big.[(triple2)] Erin is big.[(triple3)] Erin is blue.[(triple4 OR ((((triple3 triple5) -> rule7)) -> rule4))] Erin is cold.[(triple5)] Erin is nice.[(triple6 OR ((triple5) -> rule1))] Fiona is nice.[(triple7)] @1: Bob is round.[(((triple1) -> rule2))] Erin is round.[(((triple3 triple5) -> rule7))] @2: Bob is blue.[(((((triple1) -> rule2)) -> rule4))] Bob is cold.[(((((triple1) -> rule2)) -> rule6))] @3: Bob is nice.[(((((((triple1) -> rule2)) -> rule6)) -> rule1))]
Bob is green.
("Bob" "is" "green" "+")
triple1
Charlie is big.
("Charlie" "is" "big" "+")
triple2
Erin is big.
("Erin" "is" "big" "+")
triple3
Erin is blue.
("Erin" "is" "blue" "+")
triple4
((((triple3 triple5) -> (rule7 % int2))) -> (rule4 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
triple5
Erin is nice.
("Erin" "is" "nice" "+")
triple6
((triple5) -> (rule1 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
triple7
Bob is round.
("Bob" "is" "round" "+")
((triple1) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
((triple3 triple5) -> (rule7 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
((((triple1) -> (rule2 % int2))) -> (rule4 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
((((triple1) -> (rule2 % int2))) -> (rule6 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
((((((triple1) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is round.
("Bob" "is" "round" "+")
int3