Anne is furry. Anne is nice. Anne is round. Fiona is blue. Fiona is furry. Fiona is nice. Fiona is round. Fiona is smart. Gary is round. Gary is smart. Harry is nice. Harry is red. Smart, round people are blue. Furry, red people are quiet. All smart, blue people are quiet.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is round.
("Anne" "is" "round" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is red.
("Harry" "is" "red" "+")
Smart, round people are blue.
((("someone" "is" "smart" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "blue" "+"))
Furry, red people are quiet.
((("someone" "is" "furry" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "quiet" "+"))
All smart, blue people are quiet.
((("someone" "is" "smart" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "quiet" "+"))
Fiona is blue.
True
1
proof
[(triple4 OR ((triple8 triple7) -> rule1))]
("Fiona" "is" "blue" "+")
triple4
((triple8 triple7) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Gary is not smart.
False
1
inv-proof
[(triple10)]
("Gary" "is" "smart" "-")
triple10
Harry is not blue.
Unknown
inv-rconc
[@1: Harry is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Harry" "is" "blue" "-")
Harry is round.
Unknown
random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "+")
@0: Anne is furry.[(triple1)] Anne is nice.[(triple2)] Anne is round.[(triple3)] Fiona is blue.[(triple4 OR ((triple8 triple7) -> rule1))] Fiona is furry.[(triple5)] Fiona is nice.[(triple6)] Fiona is round.[(triple7)] Fiona is smart.[(triple8)] Gary is round.[(triple9)] Gary is smart.[(triple10)] Harry is nice.[(triple11)] Harry is red.[(triple12)] @1: Fiona is quiet.[(((triple8 triple4) -> rule3) OR ((triple8 ((triple8 triple7) -> rule1)) -> rule3))] Gary is blue.[(((triple10 triple9) -> rule1))] @2: Gary is quiet.[(((triple10 ((triple10 triple9) -> rule1)) -> rule3))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is nice.
("Anne" "is" "nice" "+")
triple2
Anne is round.
("Anne" "is" "round" "+")
triple3
Fiona is blue.
("Fiona" "is" "blue" "+")
triple4
((triple8 triple7) -> (rule1 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple5
Fiona is nice.
("Fiona" "is" "nice" "+")
triple6
Fiona is round.
("Fiona" "is" "round" "+")
triple7
Fiona is smart.
("Fiona" "is" "smart" "+")
triple8
Gary is round.
("Gary" "is" "round" "+")
triple9
Gary is smart.
("Gary" "is" "smart" "+")
triple10
Harry is nice.
("Harry" "is" "nice" "+")
triple11
Harry is red.
("Harry" "is" "red" "+")
triple12
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple8 triple4) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((triple8 ((triple8 triple7) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
((triple10 triple9) -> (rule1 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
((triple10 ((triple10 triple9) -> (rule1 % int2))) -> (rule3 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2