Charlie is blue. Fiona is blue. Harry is cold. Round things are furry. If something is round then it is cold. If something is nice and cold then it is blue. All nice things are blue. If something is cold then it is round. If something is furry and not kind then it is round.
Charlie is blue.
("Charlie" "is" "blue" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Round things are furry.
((("something" "is" "round" "+")) -> ("something" "is" "furry" "+"))
If something is round then it is cold.
((("something" "is" "round" "+")) -> ("something" "is" "cold" "+"))
If something is nice and cold then it is blue.
((("something" "is" "nice" "+") ("something" "is" "cold" "+")) -> ("something" "is" "blue" "+"))
All nice things are blue.
((("something" "is" "nice" "+")) -> ("something" "is" "blue" "+"))
If something is cold then it is round.
((("something" "is" "cold" "+")) -> ("something" "is" "round" "+"))
If something is furry and not kind then it is round.
((("something" "is" "furry" "+") ("something" "is" "kind" "~")) -> ("something" "is" "round" "+"))
Fiona is blue.
True
1
proof
[(triple2)]
("Fiona" "is" "blue" "+")
triple2
Fiona is not blue.
False
1
inv-proof
[(triple2)]
("Fiona" "is" "blue" "-")
triple2
Harry is round.
True
2
proof
[(((triple3) -> rule5))]
("Harry" "is" "round" "+")
((triple3) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is not round.
False
2
inv-proof
[(((triple3) -> rule5))]
("Harry" "is" "round" "-")
((triple3) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is furry.
True
3
proof
[(((((triple3) -> rule5)) -> rule1))]
("Harry" "is" "furry" "+")
((((triple3) -> (rule5 % int2))) -> (rule1 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is not furry.
False
3
inv-proof
[(((((triple3) -> rule5)) -> rule1))]
("Harry" "is" "furry" "-")
((((triple3) -> (rule5 % int2))) -> (rule1 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Fiona is not round.
Unknown
inv-rconc
[@3: Fiona is round.[CWA. Example of deepest failure = (rule5 <- rule2 <- rule6 <- FAIL)]]
("Fiona" "is" "round" "-")
Harry is blue.
Unknown
rconc
[@1: Harry is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Harry" "is" "blue" "+")
Fiona is not furry.
Unknown
inv-rconc
[@4: Fiona is furry.[CWA. Example of deepest failure = (rule1 <- rule5 <- rule2 <- rule6 <- FAIL)]]
("Fiona" "is" "furry" "-")
Fiona is kind.
Unknown
random
[@0: Fiona is kind.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "kind" "+")
Harry is not rough.
Unknown
inv-random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "-")
Fiona is rough.
Unknown
random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "+")
@0: Charlie is blue.[(triple1)] Fiona is blue.[(triple2)] Harry is cold.[(triple3)] @1: Harry is round.[(((triple3) -> rule5))] @2: Harry is furry.[(((((triple3) -> rule5)) -> rule1))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
Fiona is blue.
("Fiona" "is" "blue" "+")
triple2
Harry is cold.
("Harry" "is" "cold" "+")
triple3
Harry is round.
("Harry" "is" "round" "+")
((triple3) -> (rule5 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
((((triple3) -> (rule5 % int2))) -> (rule1 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2