Charlie is blue. Charlie is furry. Charlie is kind. Charlie is rough. Charlie is round. Charlie is smart. Fiona is furry. Fiona is rough. Fiona is young. Harry is kind. All young, rough people are smart. If Fiona is round and Fiona is smart then Fiona is kind. If Fiona is rough then Fiona is round. If someone is smart then they are round. If Fiona is rough and Fiona is blue then Fiona is smart. If someone is rough then they are kind.
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Harry is kind.
("Harry" "is" "kind" "+")
All young, rough people are smart.
((("someone" "is" "young" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "smart" "+"))
If Fiona is round and Fiona is smart then Fiona is kind.
((("Fiona" "is" "round" "+") ("Fiona" "is" "smart" "+")) -> ("Fiona" "is" "kind" "+"))
If Fiona is rough then Fiona is round.
((("Fiona" "is" "rough" "+")) -> ("Fiona" "is" "round" "+"))
If someone is smart then they are round.
((("someone" "is" "smart" "+")) -> ("someone" "is" "round" "+"))
If Fiona is rough and Fiona is blue then Fiona is smart.
((("Fiona" "is" "rough" "+") ("Fiona" "is" "blue" "+")) -> ("Fiona" "is" "smart" "+"))
If someone is rough then they are kind.
((("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
Charlie is kind.
True
1
proof
[(triple3 OR ((triple4) -> rule6))]
("Charlie" "is" "kind" "+")
triple3
((triple4) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Fiona is not furry.
False
1
inv-proof
[(triple7)]
("Fiona" "is" "furry" "-")
triple7
Harry is not round.
Unknown
inv-rconc
[@2: Harry is round.[CWA. Example of deepest failure = (rule4 <- rule1 <- FAIL)]]
("Harry" "is" "round" "-")
Fiona is blue.
Unknown
random
[@0: Fiona is blue.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "blue" "+")
@0: Charlie is blue.[(triple1)] Charlie is furry.[(triple2)] Charlie is kind.[(triple3 OR ((triple4) -> rule6))] Charlie is rough.[(triple4)] Charlie is round.[(triple5 OR ((triple6) -> rule4))] Charlie is smart.[(triple6)] Fiona is furry.[(triple7)] Fiona is rough.[(triple8)] Fiona is young.[(triple9)] Harry is kind.[(triple10)] @1: Fiona is kind.[(((triple8) -> rule6) OR ((((triple8) -> rule3) ((triple9 triple8) -> rule1)) -> rule2) OR ((((((triple9 triple8) -> rule1)) -> rule4) ((triple9 triple8) -> rule1)) -> rule2))] Fiona is round.[(((triple8) -> rule3) OR ((((triple9 triple8) -> rule1)) -> rule4))] Fiona is smart.[(((triple9 triple8) -> rule1))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
Charlie is furry.
("Charlie" "is" "furry" "+")
triple2
Charlie is kind.
("Charlie" "is" "kind" "+")
triple3
((triple4) -> (rule6 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
triple4
Charlie is round.
("Charlie" "is" "round" "+")
triple5
((triple6) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
triple6
Fiona is furry.
("Fiona" "is" "furry" "+")
triple7
Fiona is rough.
("Fiona" "is" "rough" "+")
triple8
Fiona is young.
("Fiona" "is" "young" "+")
triple9
Harry is kind.
("Harry" "is" "kind" "+")
triple10
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple8) -> (rule6 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((((triple8) -> (rule3 % int3)) ((triple9 triple8) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
((((((triple9 triple8) -> (rule1 % int3))) -> (rule4 % int2)) ((triple9 triple8) -> (rule1 % int3))) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
((triple8) -> (rule3 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((((triple9 triple8) -> (rule1 % int2))) -> (rule4 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple9 triple8) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1