Fiona is red. Harry is red. Harry is rough. All red things are smart. If something is furry and round then it is not kind. If something is smart then it is rough. Cold things are not red. Red things are not round. All rough, smart things are furry.
Fiona is red.
("Fiona" "is" "red" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is rough.
("Harry" "is" "rough" "+")
All red things are smart.
((("something" "is" "red" "+")) -> ("something" "is" "smart" "+"))
If something is furry and round then it is not kind.
((("something" "is" "furry" "+") ("something" "is" "round" "+")) -> ("something" "is" "kind" "-"))
If something is smart then it is rough.
((("something" "is" "smart" "+")) -> ("something" "is" "rough" "+"))
Cold things are not red.
((("something" "is" "cold" "+")) -> ("something" "is" "red" "-"))
Red things are not round.
((("something" "is" "red" "+")) -> ("something" "is" "round" "-"))
All rough, smart things are furry.
((("something" "is" "rough" "+") ("something" "is" "smart" "+")) -> ("something" "is" "furry" "+"))
Fiona is red.
True
1
proof
[(triple1)]
("Fiona" "is" "red" "+")
triple1
Harry is not rough.
False
1
inv-proof
[(triple3 OR ((((triple2) -> rule1)) -> rule3))]
("Harry" "is" "rough" "-")
triple3
((((triple2) -> (rule1 % int2))) -> (rule3 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Fiona is smart.
True
2
proof
[(((triple1) -> rule1))]
("Fiona" "is" "smart" "+")
((triple1) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is round.
False
2
inv-proof
[(((triple1) -> rule5))]
("Fiona" "is" "round" "+")
((triple1) -> (rule5 % int1))
Fiona is not round.
("Fiona" "is" "round" "-")
int1
Fiona is rough.
True
3
proof
[(((((triple1) -> rule1)) -> rule3))]
("Fiona" "is" "rough" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is not rough.
False
3
inv-proof
[(((((triple1) -> rule1)) -> rule3))]
("Fiona" "is" "rough" "-")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is furry.
True
6
proof
[(((((((triple1) -> rule1)) -> rule3) ((triple1) -> rule1)) -> rule6))]
("Fiona" "is" "furry" "+")
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int3))) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Fiona is not furry.
False
6
inv-proof
[(((((((triple1) -> rule1)) -> rule3) ((triple1) -> rule1)) -> rule6))]
("Fiona" "is" "furry" "-")
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int3))) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Harry is not cold.
Unknown
inv-random
[@0: Harry is cold.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "cold" "-")
Harry is kind.
Unknown
random
[@0: Harry is kind.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "kind" "+")
Fiona is not kind.
Unknown
inv-random
[@0: Fiona is kind.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "kind" "-")
Fiona is cold.
Unknown
random
[@0: Fiona is cold.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "cold" "+")
@0: Fiona is red.[(triple1)] Harry is red.[(triple2)] Harry is rough.[(triple3 OR ((((triple2) -> rule1)) -> rule3))] @1: Fiona is not round.[(((triple1) -> rule5))] Fiona is smart.[(((triple1) -> rule1))] Harry is not round.[(((triple2) -> rule5))] Harry is smart.[(((triple2) -> rule1))] @2: Fiona is rough.[(((((triple1) -> rule1)) -> rule3))] Harry is furry.[(((triple3 ((triple2) -> rule1)) -> rule6) OR ((((((triple2) -> rule1)) -> rule3) ((triple2) -> rule1)) -> rule6))] @3: Fiona is furry.[(((((((triple1) -> rule1)) -> rule3) ((triple1) -> rule1)) -> rule6))]
Fiona is red.
("Fiona" "is" "red" "+")
triple1
Harry is red.
("Harry" "is" "red" "+")
triple2
Harry is rough.
("Harry" "is" "rough" "+")
triple3
((((triple2) -> (rule1 % int2))) -> (rule3 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Fiona is not round.
("Fiona" "is" "round" "-")
((triple1) -> (rule5 % int1))
Fiona is not round.
("Fiona" "is" "round" "-")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple1) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
((triple2) -> (rule5 % int1))
Harry is not round.
("Harry" "is" "round" "-")
int1
Harry is smart.
("Harry" "is" "smart" "+")
((triple2) -> (rule1 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
((triple3 ((triple2) -> (rule1 % int2))) -> (rule6 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
((((((triple2) -> (rule1 % int3))) -> (rule3 % int2)) ((triple2) -> (rule1 % int3))) -> (rule6 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is smart.
("Harry" "is" "smart" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2)) ((triple1) -> (rule1 % int3))) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3