Fiona is furry. Fiona is round. Fiona is young. Harry is big. Harry is furry. Harry is kind. Harry is red. If something is cold then it is red. Furry things are kind. If Harry is red and Harry is kind then Harry is young. If something is furry then it is round. If something is young then it is kind. If something is round then it is kind.
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is red.
("Harry" "is" "red" "+")
If something is cold then it is red.
((("something" "is" "cold" "+")) -> ("something" "is" "red" "+"))
Furry things are kind.
((("something" "is" "furry" "+")) -> ("something" "is" "kind" "+"))
If Harry is red and Harry is kind then Harry is young.
((("Harry" "is" "red" "+") ("Harry" "is" "kind" "+")) -> ("Harry" "is" "young" "+"))
If something is furry then it is round.
((("something" "is" "furry" "+")) -> ("something" "is" "round" "+"))
If something is young then it is kind.
((("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
If something is round then it is kind.
((("something" "is" "round" "+")) -> ("something" "is" "kind" "+"))
Harry is kind.
True
1
proof
[(triple6 OR ((triple5) -> rule2) OR ((((triple5) -> rule4)) -> rule6))]
("Harry" "is" "kind" "+")
triple6
((triple5) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((((triple5) -> (rule4 % int2))) -> (rule6 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Fiona is not young.
False
1
inv-proof
[(triple3)]
("Fiona" "is" "young" "-")
triple3
Fiona is not red.
Unknown
inv-rconc
[@1: Fiona is red.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "red" "-")
Fiona is cold.
Unknown
random
[@0: Fiona is cold.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "cold" "+")
@0: Fiona is furry.[(triple1)] Fiona is round.[(triple2 OR ((triple1) -> rule4))] Fiona is young.[(triple3)] Harry is big.[(triple4)] Harry is furry.[(triple5)] Harry is kind.[(triple6 OR ((triple5) -> rule2) OR ((((triple5) -> rule4)) -> rule6))] Harry is red.[(triple7)] @1: Fiona is kind.[(((triple1) -> rule2) OR ((triple2) -> rule6) OR ((triple3) -> rule5) OR ((((triple1) -> rule4)) -> rule6))] Harry is round.[(((triple5) -> rule4))] Harry is young.[(((triple7 triple6) -> rule3) OR ((triple7 ((triple5) -> rule2)) -> rule3) OR ((triple7 ((((triple5) -> rule4)) -> rule6)) -> rule3))]
Fiona is furry.
("Fiona" "is" "furry" "+")
triple1
Fiona is round.
("Fiona" "is" "round" "+")
triple2
((triple1) -> (rule4 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
triple3
Harry is big.
("Harry" "is" "big" "+")
triple4
Harry is furry.
("Harry" "is" "furry" "+")
triple5
Harry is kind.
("Harry" "is" "kind" "+")
triple6
((triple5) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((((triple5) -> (rule4 % int2))) -> (rule6 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is red.
("Harry" "is" "red" "+")
triple7
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple1) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((triple2) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((triple3) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((((triple1) -> (rule4 % int2))) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
((triple5) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
((triple7 triple6) -> (rule3 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
((triple7 ((triple5) -> (rule2 % int2))) -> (rule3 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((triple7 ((((triple5) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3