Bob is rough. Bob is round. Dave is blue. Dave is furry. Dave is rough. Fiona is rough. Fiona is white. If Dave is round and Dave is rough then Dave is cold. Kind, white things are blue. All white, furry things are round. If Dave is round then Dave is kind. If something is cold and kind then it is blue. If something is furry then it is white. All white things are blue. If Bob is cold and Bob is blue then Bob is rough.
Bob is rough.
("Bob" "is" "rough" "+")
Bob is round.
("Bob" "is" "round" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is white.
("Fiona" "is" "white" "+")
If Dave is round and Dave is rough then Dave is cold.
((("Dave" "is" "round" "+") ("Dave" "is" "rough" "+")) -> ("Dave" "is" "cold" "+"))
Kind, white things are blue.
((("something" "is" "kind" "+") ("something" "is" "white" "+")) -> ("something" "is" "blue" "+"))
All white, furry things are round.
((("something" "is" "white" "+") ("something" "is" "furry" "+")) -> ("something" "is" "round" "+"))
If Dave is round then Dave is kind.
((("Dave" "is" "round" "+")) -> ("Dave" "is" "kind" "+"))
If something is cold and kind then it is blue.
((("something" "is" "cold" "+") ("something" "is" "kind" "+")) -> ("something" "is" "blue" "+"))
If something is furry then it is white.
((("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
All white things are blue.
((("something" "is" "white" "+")) -> ("something" "is" "blue" "+"))
If Bob is cold and Bob is blue then Bob is rough.
((("Bob" "is" "cold" "+") ("Bob" "is" "blue" "+")) -> ("Bob" "is" "rough" "+"))
Bob is rough.
True
1
proof
[(triple1)]
("Bob" "is" "rough" "+")
triple1
Dave is not rough.
False
1
inv-proof
[(triple5)]
("Dave" "is" "rough" "-")
triple5
Bob is not white.
Unknown
inv-rconc
[@1: Bob is white.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Bob" "is" "white" "-")
Bob is furry.
Unknown
random
[@0: Bob is furry.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "furry" "+")
@0: Bob is rough.[(triple1)] Bob is round.[(triple2)] Dave is blue.[(triple3 OR ((((triple4) -> rule6)) -> rule7) OR ((((((((triple4) -> rule6) triple4) -> rule3)) -> rule4) ((triple4) -> rule6)) -> rule2) OR ((((((((triple4) -> rule6) triple4) -> rule3) triple5) -> rule1) ((((((triple4) -> rule6) triple4) -> rule3)) -> rule4)) -> rule5))] Dave is furry.[(triple4)] Dave is rough.[(triple5)] Fiona is rough.[(triple6)] Fiona is white.[(triple7)] @1: Dave is white.[(((triple4) -> rule6))] Fiona is blue.[(((triple7) -> rule7))] @2: Dave is round.[(((((triple4) -> rule6) triple4) -> rule3))] @3: Dave is cold.[(((((((triple4) -> rule6) triple4) -> rule3) triple5) -> rule1))] Dave is kind.[(((((((triple4) -> rule6) triple4) -> rule3)) -> rule4))]
Bob is rough.
("Bob" "is" "rough" "+")
triple1
Bob is round.
("Bob" "is" "round" "+")
triple2
Dave is blue.
("Dave" "is" "blue" "+")
triple3
((((triple4) -> (rule6 % int2))) -> (rule7 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
((((((((triple4) -> (rule6 % int4)) triple4) -> (rule3 % int3))) -> (rule4 % int2)) ((triple4) -> (rule6 % int4))) -> (rule2 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is round.
("Dave" "is" "round" "+")
int3
Dave is white.
("Dave" "is" "white" "+")
int4
((((((((triple4) -> (rule6 % int5)) triple4) -> (rule3 % int4)) triple5) -> (rule1 % int3)) ((((((triple4) -> (rule6 % int5)) triple4) -> (rule3 % int4))) -> (rule4 % int2))) -> (rule5 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
int3
Dave is round.
("Dave" "is" "round" "+")
int4
Dave is white.
("Dave" "is" "white" "+")
int5
Dave is furry.
("Dave" "is" "furry" "+")
triple4
Dave is rough.
("Dave" "is" "rough" "+")
triple5
Fiona is rough.
("Fiona" "is" "rough" "+")
triple6
Fiona is white.
("Fiona" "is" "white" "+")
triple7
Dave is white.
("Dave" "is" "white" "+")
((triple4) -> (rule6 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple7) -> (rule7 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
((((triple4) -> (rule6 % int2)) triple4) -> (rule3 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
((((((triple4) -> (rule6 % int3)) triple4) -> (rule3 % int2)) triple5) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
int2
Dave is white.
("Dave" "is" "white" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
((((((triple4) -> (rule6 % int3)) triple4) -> (rule3 % int2))) -> (rule4 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
int2
Dave is white.
("Dave" "is" "white" "+")
int3