Anne is blue. Fiona is green. Gary is not rough. Harry is rough. If something is rough then it is blue. If something is blue and rough then it is smart. If something is kind and not green then it is not rough. If Harry is kind and Harry is not rough then Harry is young. If something is smart and blue then it is white. Young things are white.
Anne is blue.
("Anne" "is" "blue" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Gary is not rough.
("Gary" "is" "rough" "-")
Harry is rough.
("Harry" "is" "rough" "+")
If something is rough then it is blue.
((("something" "is" "rough" "+")) -> ("something" "is" "blue" "+"))
If something is blue and rough then it is smart.
((("something" "is" "blue" "+") ("something" "is" "rough" "+")) -> ("something" "is" "smart" "+"))
If something is kind and not green then it is not rough.
((("something" "is" "kind" "+") ("something" "is" "green" "~")) -> ("something" "is" "rough" "-"))
If Harry is kind and Harry is not rough then Harry is young.
((("Harry" "is" "kind" "+") ("Harry" "is" "rough" "~")) -> ("Harry" "is" "young" "+"))
If something is smart and blue then it is white.
((("something" "is" "smart" "+") ("something" "is" "blue" "+")) -> ("something" "is" "white" "+"))
Young things are white.
((("something" "is" "young" "+")) -> ("something" "is" "white" "+"))
Harry is rough.
True
1
proof
[(triple4)]
("Harry" "is" "rough" "+")
triple4
Harry is not rough.
False
1
inv-proof
[(triple4)]
("Harry" "is" "rough" "-")
triple4
Harry is blue.
True
2
proof
[(((triple4) -> rule1))]
("Harry" "is" "blue" "+")
((triple4) -> (rule1 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is not blue.
False
2
inv-proof
[(((triple4) -> rule1))]
("Harry" "is" "blue" "-")
((triple4) -> (rule1 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is smart.
True
4
proof
[(((((triple4) -> rule1) triple4) -> rule2))]
("Harry" "is" "smart" "+")
((((triple4) -> (rule1 % int2)) triple4) -> (rule2 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is not smart.
False
4
inv-proof
[(((((triple4) -> rule1) triple4) -> rule2))]
("Harry" "is" "smart" "-")
((((triple4) -> (rule1 % int2)) triple4) -> (rule2 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is white.
True
7
proof
[(((((((triple4) -> rule1) triple4) -> rule2) ((triple4) -> rule1)) -> rule5))]
("Harry" "is" "white" "+")
((((((triple4) -> (rule1 % int3)) triple4) -> (rule2 % int2)) ((triple4) -> (rule1 % int3))) -> (rule5 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is blue.
("Harry" "is" "blue" "+")
int3
Harry is not white.
False
7
inv-proof
[(((((((triple4) -> rule1) triple4) -> rule2) ((triple4) -> rule1)) -> rule5))]
("Harry" "is" "white" "-")
((((((triple4) -> (rule1 % int3)) triple4) -> (rule2 % int2)) ((triple4) -> (rule1 % int3))) -> (rule5 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is blue.
("Harry" "is" "blue" "+")
int3
Fiona is not white.
Unknown
inv-rconc
[@2: Fiona is white.[CWA. Example of deepest failure = (rule5 <- rule2 <- FAIL)]]
("Fiona" "is" "white" "-")
Harry is young.
Unknown
rconc
[@1: Harry is young.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Harry" "is" "young" "+")
Gary is not smart.
Unknown
inv-rconc
[@1: Gary is smart.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Gary" "is" "smart" "-")
Fiona is blue.
Unknown
rconc
[@1: Fiona is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "blue" "+")
Gary is not kind.
Unknown
inv-random
[@0: Gary is kind.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "kind" "-")
Harry is green.
Unknown
random
[@0: Harry is green.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "green" "+")
Gary is not green.
Unknown
inv-random
[@0: Gary is green.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "green" "-")
Gary is young.
Unknown
random
[@0: Gary is young.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "young" "+")
@0: Anne is blue.[(triple1)] Fiona is green.[(triple2)] Gary is not rough.[(triple3)] Harry is rough.[(triple4)] @1: Harry is blue.[(((triple4) -> rule1))] @2: Harry is smart.[(((((triple4) -> rule1) triple4) -> rule2))] @3: Harry is white.[(((((((triple4) -> rule1) triple4) -> rule2) ((triple4) -> rule1)) -> rule5))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Fiona is green.
("Fiona" "is" "green" "+")
triple2
Gary is not rough.
("Gary" "is" "rough" "-")
triple3
Harry is rough.
("Harry" "is" "rough" "+")
triple4
Harry is blue.
("Harry" "is" "blue" "+")
((triple4) -> (rule1 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
((((triple4) -> (rule1 % int2)) triple4) -> (rule2 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
((((((triple4) -> (rule1 % int3)) triple4) -> (rule2 % int2)) ((triple4) -> (rule1 % int3))) -> (rule5 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
int2
Harry is blue.
("Harry" "is" "blue" "+")
int3