Charlie is furry. Fiona is smart. Harry is rough. If Harry is cold then Harry is rough. All smart things are not cold. Young things are smart. Rough, green things are red. If something is rough then it is not red. If something is smart and not rough then it is not red.
Charlie is furry.
("Charlie" "is" "furry" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Harry is rough.
("Harry" "is" "rough" "+")
If Harry is cold then Harry is rough.
((("Harry" "is" "cold" "+")) -> ("Harry" "is" "rough" "+"))
All smart things are not cold.
((("something" "is" "smart" "+")) -> ("something" "is" "cold" "-"))
Young things are smart.
((("something" "is" "young" "+")) -> ("something" "is" "smart" "+"))
Rough, green things are red.
((("something" "is" "rough" "+") ("something" "is" "green" "+")) -> ("something" "is" "red" "+"))
If something is rough then it is not red.
((("something" "is" "rough" "+")) -> ("something" "is" "red" "-"))
If something is smart and not rough then it is not red.
((("something" "is" "smart" "+") ("something" "is" "rough" "~")) -> ("something" "is" "red" "-"))
Charlie is furry.
True
1
proof
[(triple1)]
("Charlie" "is" "furry" "+")
triple1
Fiona is not smart.
False
1
inv-proof
[(triple2)]
("Fiona" "is" "smart" "-")
triple2
Harry is not red.
True
2
proof
[(((triple3) -> rule5))]
("Harry" "is" "red" "-")
((triple3) -> (rule5 % int1))
Harry is not red.
("Harry" "is" "red" "-")
int1
Fiona is cold.
False
2
inv-proof
[(((triple2) -> rule2))]
("Fiona" "is" "cold" "+")
((triple2) -> (rule2 % int1))
Fiona is not cold.
("Fiona" "is" "cold" "-")
int1
Fiona is not red.
Unknown
inv-rconc
[@1: Fiona is red.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Fiona" "is" "red" "-")
Harry is smart.
Unknown
rconc
[@1: Harry is smart.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Harry" "is" "smart" "+")
Charlie is not young.
Unknown
inv-random
[@0: Charlie is young.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "young" "-")
Fiona is rough.
Unknown
random
[@0: Fiona is rough.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "rough" "+")
@0: Charlie is furry.[(triple1)] Fiona is smart.[(triple2)] Harry is rough.[(triple3)] @1: Fiona is not cold.[(((triple2) -> rule2))] Harry is not red.[(((triple3) -> rule5))]
Charlie is furry.
("Charlie" "is" "furry" "+")
triple1
Fiona is smart.
("Fiona" "is" "smart" "+")
triple2
Harry is rough.
("Harry" "is" "rough" "+")
triple3
Fiona is not cold.
("Fiona" "is" "cold" "-")
((triple2) -> (rule2 % int1))
Fiona is not cold.
("Fiona" "is" "cold" "-")
int1
Harry is not red.
("Harry" "is" "red" "-")
((triple3) -> (rule5 % int1))
Harry is not red.
("Harry" "is" "red" "-")
int1