Charlie is cold. Charlie is furry. Charlie is kind. Charlie is nice. Charlie is quiet. Charlie is not round. Charlie is not young. Dave is not cold. Dave is nice. Dave is quiet. Fiona is not cold. Fiona is furry. Fiona is kind. Fiona is nice. Fiona is not round. Fiona is young. If someone is nice then they are furry. If someone is nice then they are furry. All round people are kind.
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is not round.
("Charlie" "is" "round" "-")
Charlie is not young.
("Charlie" "is" "young" "-")
Dave is not cold.
("Dave" "is" "cold" "-")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Fiona is not cold.
("Fiona" "is" "cold" "-")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is not round.
("Fiona" "is" "round" "-")
Fiona is young.
("Fiona" "is" "young" "+")
If someone is nice then they are furry.
((("someone" "is" "nice" "+")) -> ("someone" "is" "furry" "+"))
If someone is nice then they are furry.
((("someone" "is" "nice" "+")) -> ("someone" "is" "furry" "+"))
All round people are kind.
((("someone" "is" "round" "+")) -> ("someone" "is" "kind" "+"))
Fiona is furry.
True
1
proof
[(triple12 OR ((triple14) -> rule1) OR ((triple14) -> rule2))]
("Fiona" "is" "furry" "+")
triple12
((triple14) -> (rule1 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple14) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is not furry.
False
1
inv-proof
[(triple12 OR ((triple14) -> rule1) OR ((triple14) -> rule2))]
("Fiona" "is" "furry" "-")
triple12
((triple14) -> (rule1 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple14) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Dave is not kind.
Unknown
inv-rconc
[@1: Dave is kind.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Dave" "is" "kind" "-")
Dave is round.
Unknown
random
[@0: Dave is round.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "round" "+")
@0: Charlie is cold.[(triple1)] Charlie is furry.[(triple2 OR ((triple4) -> rule1) OR ((triple4) -> rule2))] Charlie is kind.[(triple3)] Charlie is nice.[(triple4)] Charlie is not round.[(triple6)] Charlie is not young.[(triple7)] Charlie is quiet.[(triple5)] Dave is nice.[(triple9)] Dave is not cold.[(triple8)] Dave is quiet.[(triple10)] Fiona is furry.[(triple12 OR ((triple14) -> rule1) OR ((triple14) -> rule2))] Fiona is kind.[(triple13)] Fiona is nice.[(triple14)] Fiona is not cold.[(triple11)] Fiona is not round.[(triple15)] Fiona is young.[(triple16)] @1: Dave is furry.[(((triple9) -> rule1) OR ((triple9) -> rule2))]
Charlie is cold.
("Charlie" "is" "cold" "+")
triple1
Charlie is furry.
("Charlie" "is" "furry" "+")
triple2
((triple4) -> (rule1 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
((triple4) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
triple3
Charlie is nice.
("Charlie" "is" "nice" "+")
triple4
Charlie is not round.
("Charlie" "is" "round" "-")
triple6
Charlie is not young.
("Charlie" "is" "young" "-")
triple7
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple5
Dave is nice.
("Dave" "is" "nice" "+")
triple9
Dave is not cold.
("Dave" "is" "cold" "-")
triple8
Dave is quiet.
("Dave" "is" "quiet" "+")
triple10
Fiona is furry.
("Fiona" "is" "furry" "+")
triple12
((triple14) -> (rule1 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((triple14) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
triple13
Fiona is nice.
("Fiona" "is" "nice" "+")
triple14
Fiona is not cold.
("Fiona" "is" "cold" "-")
triple11
Fiona is not round.
("Fiona" "is" "round" "-")
triple15
Fiona is young.
("Fiona" "is" "young" "+")
triple16
Dave is furry.
("Dave" "is" "furry" "+")
((triple9) -> (rule1 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
((triple9) -> (rule2 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1