summaryrefslogtreecommitdiff
path: root/prolog
diff options
context:
space:
mode:
authorTimotej Lazar <timotej.lazar@fri.uni-lj.si>2017-04-10 21:46:02 +0200
committerTimotej Lazar <timotej.lazar@fri.uni-lj.si>2017-04-10 21:46:02 +0200
commit794d4dc03dec8db33bf8afe8b1c0a126176407d1 (patch)
tree6b44a36225b60a786b5d030b055a54c6bfab19db /prolog
parentf25e7eac2db09f48e2e96b1c2e0da71ffe0fca3c (diff)
Prolog: add bugs files for trees problems
Diffstat (limited to 'prolog')
-rw-r--r--prolog/problems/trees/deletebt_3/bugs.json425
-rw-r--r--prolog/problems/trees/depthbt_2/bugs.json383
-rw-r--r--prolog/problems/trees/insertbt_3/bugs.json239
-rw-r--r--prolog/problems/trees/maxt_2/bugs.json382
-rw-r--r--prolog/problems/trees/memberbt_2/bugs.json322
-rw-r--r--prolog/problems/trees/membert_2/bugs.json395
-rw-r--r--prolog/problems/trees/mirrorbt_2/bugs.json300
-rw-r--r--prolog/problems/trees/numberbt_2/bugs.json365
8 files changed, 2811 insertions, 0 deletions
diff --git a/prolog/problems/trees/deletebt_3/bugs.json b/prolog/problems/trees/deletebt_3/bugs.json
new file mode 100644
index 0000000..1be930a
--- /dev/null
+++ b/prolog/problems/trees/deletebt_3/bugs.json
@@ -0,0 +1,425 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"deleteBT\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (binop variable \"=\"))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (compound (functor \"deleteBT\") (args variable (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (compound (functor \"deleteBT\") (args variable)) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args variable))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (binop \"=\" variable))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (binop variable \"=\") (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args variable)))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable)))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable)))))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable)))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))))))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" variable))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (binop variable \"=\"))",
+ "(clause (binop \"=\" variable) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (compound (functor \"deleteBT\") (args variable)) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (binop \"=\" variable) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))))",
+ "(clause (binop (compound (functor \"b\") (args (args variable))) \"=\") (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (binop \"\\=\" variable) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (binop variable \"=\") (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (binop (compound (functor \"b\") (args (args (args variable)))) \"=\"))",
+ "(clause (binop variable \"=\") (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (binop \"=\" variable))",
+ "(clause (binop variable \"=\") (compound (functor \"deleteRoot\") (args variable)))",
+ "(clause (binop variable \"\\==\") (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (binop (compound (functor \"b\") (args variable)) \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (binop variable \"\\=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"\\==\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"\\=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (binop variable \"\\==\"))",
+ "(clause (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))))",
+ "(clause (compound (functor \"deleteBT\") (args variable)) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))) (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop variable \"=\"))",
+ "(clause (binop variable \"=\") (compound (functor \"delrootBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))) (compound (functor \"deleteRoot\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)) (args variable))))))",
+ "(clause (binop \"=\" variable variable))",
+ "(clause (binop (compound (functor \"b\") (args variable (args (args variable)))) \"=\"))",
+ "(clause (binop variable \"\\=\") (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (binop variable \"==\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (binop variable \"==\"))",
+ "(clause (compound (functor \"memberBT\") (args variable)) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable (args (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (compound (functor \"potegniR\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"delete\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (binop \"=\" variable))",
+ "(clause (compound (functor \"potegniR\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (compound (functor \"deleteRoot\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (binop (compound (functor \"b\") (args (args variable))) \"=\") (binop \"=\" variable))",
+ "(clause (compound (functor \"deleteRoot\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (compound (functor \"memberBT\") (args (args variable))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (binop \"=\" variable))",
+ "(clause (compound (functor \"potegniR\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (compound (functor \"potegniR\") (args (args variable))))",
+ "(clause (head (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (binop \"==\" variable))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"deleteRoot\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (compound (functor \"deleteRoot\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable)))))))))))) (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable)))))))))) (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (binop \"=\" variable))",
+ "(clause (compound (functor \"deleteBTtop\") (args variable)) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (compound (functor \"deleteBT\") (args variable)) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (binop (compound (functor \"b\") (args (args variable))) \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop variable \"\\=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable)))))))))) (binop \"=\" (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"==\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (binop \"\\=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (binop variable \"\\=\"))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (binop \"=\" variable) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"delrootBT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args variable)))))))) (binop \"=\" (compound (functor \"b\") (args (compound (functor \"b\") (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))))))) (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (binop \"\\=\" variable) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (binop \"\\==\" variable) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (binop variable \"=\") (compound (functor \"deleteR\") (args variable)))",
+ "(clause (head (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (compound (functor \"deleteR\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (compound (functor \"delrootBT\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args variable))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"potegniR\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))))))) (binop \"=\" variable))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (binop \"\\=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable)))))))))))) (compound (functor \"moveUp\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop (compound (functor \"b\") (args (args variable))) \"=\"))",
+ "(clause (compound (functor \"delrootBT\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable)))))))))) (compound (functor \"moveUp\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"delete\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args variable)))))))) (compound (functor \"moveUp\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (binop variable \"=\\=\"))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"moveUp\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"delete\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))) (binop \"=\" (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"moveUp\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable)))))))))) (compound (functor \"moveUp\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\\=\" variable))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"potegniR\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (head (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable)))))))) (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteRoot\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"deleteRoot\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"potegniR\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (head (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))) (compound (functor \"potegniR\") (args (args variable))))",
+ "(clause (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (head (compound (functor \"potegniL\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"potegniL\") (args (args variable))))",
+ "(clause (binop \"=\" variable) (compound (functor \"potegniR\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"moveUp\") (args (args (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"potegniR\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (compound (functor \"potegniL\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (head (compound (functor \"potegniL\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (compound (functor \"b\") (args variable))))))) (compound (functor \"potegniL\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (head (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))) (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (binop variable \"=\") (compound (functor \"potegniR\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (compound (functor \"potegniL\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"potegniL\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"potegniL\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable)))))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))) (compound (functor \"potegniL\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"deleteBTtop\") (args variable)))",
+ "(clause (binop variable \"=\") (compound (functor \"deleteRootBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable)))))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (compound (functor \"memeberBT\") (args variable)) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (compound (functor \"memeberBT\") (args (args variable))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args variable))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (compound (functor \"memeberBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable (args variable)))))))))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteBTtop\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"deleteBTtop\") (args variable)))",
+ "(clause (head (binop \"=\" variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"delete\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"deleteBTtop\") (args (args variable))))",
+ "(clause (head (compound (functor \"createBT\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))) (compound (functor \"deleteBTtop\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"delete\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"delrootBT\") (args variable)))",
+ "(clause (compound (functor \"deleteBT\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (compound (functor \"deleteBT\") (args variable)) (binop variable \"\\=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args variable)))))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (binop \"=\" variable) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"memeberBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBTtop\") (args (compound (functor \"b\") (args variable))))) (binop variable \"=\"))",
+ "(clause (binop \"=\" variable) (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"moveUp\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"moveUp\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"moveUp\") (args (args variable (args variable))))))",
+ "(clause (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"moveUp\") (args variable (args (args variable))))))",
+ "(clause (binop variable \"=\") (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args (args variable)))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (compound (functor \"deleteRoot\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBt\") (args (args (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"moveUp\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"moveUp\") (args variable)))",
+ "(clause (head (compound (functor \"moveUp\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable)))))))))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (binop \"\\==\" variable) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"deleteR\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"deleteR\") (args variable)))",
+ "(clause (head (compound (functor \"delrootBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"delrootBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteR\") (args (compound (functor \"b\") (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable)))))) (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable))))))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"moveUp\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"moveUp\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteR\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"deleteR\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBt\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"deleteR\") (args (compound (functor \"b\") (args variable)))))",
+ "(clause (binop variable \"=\") (compound (functor \"deleteRoot\") (args (args variable))))"
+ ],
+ "rules": [
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))))"
+ ],
+ "distribution": [
+ 54,
+ 0
+ ],
+ "quality": 0.966653720745129
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))) (compound (functor \"deleteBT\") (args (args (args variable)))))"
+ ],
+ "distribution": [
+ 51,
+ 0
+ ],
+ "quality": 0.9647465294505704
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args variable))))"
+ ],
+ "distribution": [
+ 71,
+ 1
+ ],
+ "quality": 0.9577830988832008
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"deleteBT\") (args variable)) (compound (functor \"deleteBT\") (args variable)))"
+ ],
+ "distribution": [
+ 40,
+ 0
+ ],
+ "quality": 0.9520873377516836
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args (args (args variable))))))"
+ ],
+ "distribution": [
+ 29,
+ 0
+ ],
+ "quality": 0.928054594922129
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (binop \"=\" variable))"
+ ],
+ "distribution": [
+ 15,
+ 0
+ ],
+ "quality": 0.8333214792658596
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"deleteBT\") (args variable)))"
+ ],
+ "distribution": [
+ 15,
+ 0
+ ],
+ "quality": 0.8333214792658596
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable))))))"
+ ],
+ "distribution": [
+ 14,
+ 0
+ ],
+ "quality": 0.830490740715106
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))))"
+ ],
+ "distribution": [
+ 14,
+ 0
+ ],
+ "quality": 0.830490740715106
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable)))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable)))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable))))))"
+ ],
+ "distribution": [
+ 7,
+ 46
+ ],
+ "quality": 0.7897208120726826
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args variable)))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args variable))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args variable)))))))"
+ ],
+ "distribution": [
+ 10,
+ 47
+ ],
+ "quality": 0.7488711530556023
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"deleteBT\") (args variable))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable)))))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args (args variable)))))))))) (compound (functor \"deleteBT\") (args (args (compound (functor \"b\") (args (args (args variable))))))))"
+ ],
+ "distribution": [
+ 26,
+ 53
+ ],
+ "quality": 0.6157095689691464
+ }
+ ]
+} \ No newline at end of file
diff --git a/prolog/problems/trees/depthbt_2/bugs.json b/prolog/problems/trees/depthbt_2/bugs.json
new file mode 100644
index 0000000..8058d2b
--- /dev/null
+++ b/prolog/problems/trees/depthbt_2/bugs.json
@@ -0,0 +1,383 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"depthBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (binop \"is\" (binop \"+\" \"1\")))",
+ "(clause (binop variable \"is\" (binop \"+\" \"1\")))",
+ "(clause (binop \"is\" (binop variable \"+\" \"1\")))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"depthBT\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"depthBT\") (args variable)))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"depthBT\") (args variable)))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))))",
+ "(clause (binop \">=\" variable))",
+ "(clause (binop \">\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \">\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">=\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (binop variable \">\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \">=\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (compound (functor \"max\") (args (list (t (list (h variable)))))))",
+ "(clause (binop variable \">\"))",
+ "(clause (head (compound (functor \"depthBT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop variable \">=\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"<\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \"=<\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"=<\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \"<\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" variable))",
+ "(clause (head (compound (functor \"depthBT\") (args (args \"1\")))))",
+ "(clause (binop \"=<\" variable) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"=\"))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args variable))) (args \"1\")))))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (binop \"<\" variable) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\") (binop variable \"is\"))",
+ "(clause (binop variable \"is\" (binop \"1\" \"+\")))",
+ "(clause (binop \"is\" (binop \"1\" \"+\")))",
+ "(clause (head (compound (functor \"depthBT\") (args (args variable)))) (compound (functor \"max\") (args (args variable))))",
+ "(clause (binop \"is\" (binop \"1\" \"+\" variable)))",
+ "(clause (binop variable \"=<\"))",
+ "(clause (binop variable \"is\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))",
+ "(clause (binop variable \"<\"))",
+ "(clause (binop variable \">=\") (binop \"is\" variable))",
+ "(clause (head (compound (functor \"depthBT\") (args (args variable)))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\") (binop \"=\" variable))",
+ "(clause (binop variable \">\") (binop \"=\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"depth\") (args variable)))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"depth\") (args variable)))",
+ "(clause (binop \"is\" variable))",
+ "(clause (head (compound (functor \"depthBT\") (args variable))) (binop variable \"=\"))",
+ "(clause (binop \"<\" variable) (binop \"is\" variable))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (binop \"<\" variable))",
+ "(clause (compound (functor \"depth\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"depthBT\") (args variable)))",
+ "(clause (binop \"=<\" variable))",
+ "(clause (binop variable \">\") (binop \"is\" variable))",
+ "(clause (compound (functor \"depth\") (args (args variable))) (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"depthBT\") (args variable)))",
+ "(clause (binop variable \"=\" (binop \"+\" \"1\")))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (binop \"=\" (binop variable \"+\" \"1\")))",
+ "(clause (binop \"=\" (binop \"+\" \"1\")))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (compound (functor \"max\") (args variable)))",
+ "(clause (binop variable \">=\") (binop \"=\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (compound (functor \"max\") (args (args variable))))",
+ "(clause (head (compound (functor \"max\") (args (args (args variable))))) (binop variable \"is\"))",
+ "(clause (compound (functor \"depth\") (args (args variable))) (compound (functor \"max\") (args (list (t (list (h variable)))))))",
+ "(clause (binop \"=\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (head (compound (functor \"depth\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (binop \"<\" variable) (binop \"is\" (binop \"+\" variable)))",
+ "(clause (compound (functor \"depthBT\") (args variable)) (compound (functor \"depthBT\") (args variable)))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))",
+ "(clause (compound (functor \"max\") (args (args (args variable)))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"<\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop \">=\" variable) (binop \"<\" variable))",
+ "(clause (head (compound (functor \"depthBT\") (args (args variable)))))",
+ "(clause (binop \">=\" variable) (binop \"is\" variable))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"=\" (binop variable \"+\")))",
+ "(clause (binop \"is\" (binop (binop variable \"+\") \"+\" \"1\")))",
+ "(clause (binop \"is\" (binop (binop \"+\" variable) \"+\" \"1\")))",
+ "(clause (binop \"is\" (binop variable \"+\")) (binop \"=\" variable))",
+ "(clause (binop \"is\" (binop variable \"+\")) (binop variable \">\"))",
+ "(clause (binop \"is\" (binop \"+\" variable)))",
+ "(clause (binop variable \"=\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\") (binop variable \">\"))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args variable (args variable)))))))",
+ "(clause (compound (functor \"depth\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (binop variable \"is\") (binop \">\" variable))",
+ "(clause (binop variable \"=\" \"0\"))",
+ "(clause (binop \"is\" \"1\"))",
+ "(clause (binop \"=\" \"0\"))",
+ "(clause (binop variable \"is\" \"1\"))",
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args variable (args variable))))))))",
+ "(clause (compound (functor \"depth\") (args (args variable))) (binop variable \">=\"))",
+ "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \">\"))",
+ "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \">=\" variable))",
+ "(clause (binop variable \"is\") (binop variable \">=\"))",
+ "(clause (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (binop variable \">=\") (binop variable \"<\"))",
+ "(clause (head (compound (functor \"max\") (args (args (args variable))))) (binop variable \">=\"))",
+ "(clause (head (compound (functor \"depth\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"depth\") (args variable)))",
+ "(clause (head (compound (functor \"max\") (args variable (args (args variable))))))",
+ "(clause (head (compound (functor \"max\") (args variable))) (binop variable \">\"))",
+ "(clause (binop variable \">=\") (binop \"is\" (binop \"+\" variable)))",
+ "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \">\" variable))",
+ "(clause (head (compound (functor \"max\") (args variable))) (binop \"is\" variable))",
+ "(clause (binop variable \"is\") (binop variable \"=\"))",
+ "(clause (binop \"is\" variable) (binop variable \"<\"))",
+ "(clause (compound (functor \"depthBT\") (args variable)))",
+ "(clause (binop variable \"is\") (binop \">=\" variable))",
+ "(clause (binop \"is\" (binop variable \"+\")) (binop variable \"=<\"))",
+ "(clause (binop \"=<\" variable) (binop \"is\" variable))",
+ "(clause (head (compound (functor \"max\") (args variable))) (binop variable \">=\"))",
+ "(clause (binop variable \"is\") (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (head (compound (functor \"max\") (args (args variable (args variable))))))",
+ "(clause (head (compound (functor \"depth\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"depth\") (args variable)))",
+ "(clause (binop variable \"<\") (binop variable \"is\"))",
+ "(clause (compound (functor \"max\") (args (args variable))))",
+ "(clause (head (compound (functor \"depthBT\") (args (args variable)))) (compound (functor \"depthBT\") (args (args variable))))",
+ "(clause (binop variable \">\") (binop \"is\" (binop \"+\" variable)))",
+ "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \"is\" variable))"
+ ],
+ "rules": [
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"depthBT\") (args (args variable))))",
+ "(clause (binop variable \"is\"))"
+ ],
+ "distribution": [
+ 55,
+ 1
+ ],
+ "quality": 0.9366155799012119
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"depthBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 75,
+ 5
+ ],
+ "quality": 0.9068719016525688
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"depth\") (args variable)))"
+ ],
+ "distribution": [
+ 18,
+ 0
+ ],
+ "quality": 0.88342672157224
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (compound (functor \"max\") (args (list (t (list (h variable)))))))",
+ "(clause (head (compound (functor \"depthBT\") (args (args \"0\")))))"
+ ],
+ "distribution": [
+ 4,
+ 58
+ ],
+ "quality": 0.8786972541533745
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"depth\") (args variable)))"
+ ],
+ "distribution": [
+ 17,
+ 0
+ ],
+ "quality": 0.8763783057741319
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">=\"))",
+ "(clause (binop variable \">\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">\"))"
+ ],
+ "distribution": [
+ 0,
+ 21
+ ],
+ "quality": 0.8624830571857203
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop variable \"=\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"=\" variable))"
+ ],
+ "distribution": [
+ 16,
+ 0
+ ],
+ "quality": 0.827214870304354
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"depth\") (args (args variable))) (compound (functor \"max\") (args (list (h variable)))))"
+ ],
+ "distribution": [
+ 12,
+ 0
+ ],
+ "quality": 0.8189377121994933
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">=\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">\"))"
+ ],
+ "distribution": [
+ 1,
+ 22
+ ],
+ "quality": 0.8144128532392234
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"depthBT\") (args (compound (functor \"b\") (args (args (args variable))))))))"
+ ],
+ "distribution": [
+ 11,
+ 0
+ ],
+ "quality": 0.8013049557929117
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \"is\"))"
+ ],
+ "distribution": [
+ 10,
+ 0
+ ],
+ "quality": 0.7814052617118917
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))"
+ ],
+ "distribution": [
+ 9,
+ 0
+ ],
+ "quality": 0.7547051760861178
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"depth\") (args (args variable))) (binop \"is\" (binop variable \"+\")))"
+ ],
+ "distribution": [
+ 8,
+ 0
+ ],
+ "quality": 0.7240209586644614
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"depthBT\") (args (args \"0\")))))",
+ "(clause (binop variable \">\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \">\" variable))"
+ ],
+ "distribution": [
+ 19,
+ 59
+ ],
+ "quality": 0.6952644822192884
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"depthBT\") (args (args variable)))))"
+ ],
+ "distribution": [
+ 7,
+ 0
+ ],
+ "quality": 0.6819019447846737
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop variable \"=\" (binop \"+\" \"1\")))"
+ ],
+ "distribution": [
+ 7,
+ 0
+ ],
+ "quality": 0.6819019447846737
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">=\"))",
+ "(clause (binop \"is\" (binop variable \"+\")))"
+ ],
+ "distribution": [
+ 12,
+ 35
+ ],
+ "quality": 0.6526722399516018
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"depthBT\") (args (args \"0\")))))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\"))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop variable \">=\"))"
+ ],
+ "distribution": [
+ 22,
+ 57
+ ],
+ "quality": 0.6437125697968822
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"depthBT\") (args (args \"0\")))))",
+ "(clause (compound (functor \"depthBT\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\"))"
+ ],
+ "distribution": [
+ 50,
+ 101
+ ],
+ "quality": 0.6343527335143584
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (binop variable \">=\") (binop \"is\" (binop \"+\" variable)))"
+ ],
+ "distribution": [
+ 0,
+ 5
+ ],
+ "quality": 0.6063748391885129
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (binop \"=<\" variable) (binop \"is\" (binop variable \"+\")))"
+ ],
+ "distribution": [
+ 14,
+ 22
+ ],
+ "quality": 0.4751491653292199
+ }
+ ]
+} \ No newline at end of file
diff --git a/prolog/problems/trees/insertbt_3/bugs.json b/prolog/problems/trees/insertbt_3/bugs.json
new file mode 100644
index 0000000..5dfe22a
--- /dev/null
+++ b/prolog/problems/trees/insertbt_3/bugs.json
@@ -0,0 +1,239 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"insertBT\") (args variable (args (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"insertBT\") (args variable))) (compound (functor \"insertBT\") (args variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (binop variable \"=\"))",
+ "(clause (head (compound (functor \"insertBT\") (args variable))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))) (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"insertBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"insertBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args variable))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (compound (functor \"insertBT\") (args variable)))",
+ "(clause (compound (functor \"insertBT\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args variable))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args variable)))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"insertBT\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"insertBT\") (args (args (args variable)))))",
+ "(clause (compound (functor \"insertBT\") (args (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"insertBT\") (args variable)))",
+ "(clause (compound (functor \"insertBT\") (args (args (args variable)))))",
+ "(clause (compound (functor \"insertBT\") (args (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"imInsert\") (args variable (args (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args (compound (functor \"b\") (args (args variable)))))))) (compound (functor \"insertBT\") (args variable)))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))) (compound (functor \"insertBT\") (args (args (args variable)))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"imInsert\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"imInsert\") (args variable)))",
+ "(clause (head (compound (functor \"moveUp\") (args (args (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"imInsert\") (args variable)))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (compound (functor \"delete\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))) (compound (functor \"delete\") (args (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args variable))) (compound (functor \"delete\") (args variable)))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable)))))))))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (compound (functor \"insertBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))) (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args variable))) (compound (functor \"insert\") (args variable)))",
+ "(clause (binop variable \"=\") (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))) (args (compound (functor \"b\") (args variable))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (compound (functor \"insertBT\") (args variable)))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable (args (compound (functor \"b\") (args variable))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args variable (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable)))))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args (compound (functor \"b\") (args variable))))))))))",
+ "(clause (compound (functor \"insert\") (args (args variable))))",
+ "(clause (compound (functor \"insert\") (args variable)))",
+ "(clause (head (compound (functor \"insertBT\") (args (args variable (args variable))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))))))))",
+ "(clause (head (compound (functor \"insertBT\") (args variable (args (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable)))))))))))))",
+ "(clause (head (compound (functor \"insertTOP\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"insertTOP\") (args variable)))",
+ "(clause (head (compound (functor \"insertTOP\") (args (args (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"insertTOP\") (args variable))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"imInsert\") (args (args (args variable)))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"moveUp\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"moveUp\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"moveUp\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"moveUp\") (args variable))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"moveUp\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"moveUp\") (args variable)))",
+ "(clause (head (compound (functor \"imInsert\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"imInsert\") (args (args variable))))",
+ "(clause (compound (functor \"insertTOP\") (args (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"imInsert\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (compound (functor \"b\") (args variable))))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"insert\") (args (args variable))))",
+ "(clause (compound (functor \"insertTOP\") (args (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"imInsert\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"imInsert\") (args (args (args variable)))))",
+ "(clause (compound (functor \"insert\") (args (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"moveUp\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"imInsert\") (args (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args variable))))))))",
+ "(clause (head (compound (functor \"moveUp\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"moveUp\") (args variable)))",
+ "(clause (head (compound (functor \"imInsert\") (args (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args (args variable))))))))))",
+ "(clause (head (compound (functor \"moveUp\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"moveUp\") (args (args variable))))",
+ "(clause (head (compound (functor \"moveUp\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"moveUp\") (args (args variable))))",
+ "(clause (compound (functor \"insertTOP\") (args (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args (compound (functor \"b\") (args (args (args variable))))))))) (compound (functor \"imInsert\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"imInsert\") (args (args variable))))",
+ "(clause (head (compound (functor \"moveUp\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args variable (args (args variable))))))",
+ "(clause (compound (functor \"insertTOP\") (args variable)))",
+ "(clause (head (compound (functor \"imInsert\") (args (args (args (compound (functor \"b\") (args variable))))))) (compound (functor \"imInsert\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"moveUp\") (args variable)))",
+ "(clause (head (compound (functor \"imInsert\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"imInsert\") (args (args variable))))",
+ "(clause (head (compound (functor \"moveUp\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"moveUp\") (args (args (args variable)))))"
+ ],
+ "rules": [
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (compound (functor \"deleteBT\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))) (compound (functor \"deleteBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 1,
+ 91
+ ],
+ "quality": 0.9693250605733864
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))) (binop variable \"=\"))"
+ ],
+ "distribution": [
+ 41,
+ 1
+ ],
+ "quality": 0.9303792838699102
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args variable))) (compound (functor \"deleteBT\") (args variable)))"
+ ],
+ "distribution": [
+ 7,
+ 92
+ ],
+ "quality": 0.9121720515644586
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args variable))) (compound (functor \"insertBT\") (args variable)))"
+ ],
+ "distribution": [
+ 58,
+ 4
+ ],
+ "quality": 0.9029378963165624
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"insertBT\") (args variable)))"
+ ],
+ "distribution": [
+ 16,
+ 0
+ ],
+ "quality": 0.8855548062796669
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))))"
+ ],
+ "distribution": [
+ 10,
+ 0
+ ],
+ "quality": 0.817072229454041
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (compound (functor \"delete\") (args (args (args variable)))))"
+ ],
+ "distribution": [
+ 9,
+ 0
+ ],
+ "quality": 0.7970543398892662
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args (args variable))))))"
+ ],
+ "distribution": [
+ 8,
+ 0
+ ],
+ "quality": 0.7731634335948153
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))) (compound (functor \"deleteBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 8,
+ 0
+ ],
+ "quality": 0.7731634335948153
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args variable)))))"
+ ],
+ "distribution": [
+ 7,
+ 0
+ ],
+ "quality": 0.7420575550991563
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args (args variable (args (compound (functor \"b\") (args variable))))))))"
+ ],
+ "distribution": [
+ 7,
+ 0
+ ],
+ "quality": 0.7420575550991563
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"insertBT\") (args variable (args (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable)))))))))))"
+ ],
+ "distribution": [
+ 6,
+ 0
+ ],
+ "quality": 0.7028226698532295
+ }
+ ]
+} \ No newline at end of file
diff --git a/prolog/problems/trees/maxt_2/bugs.json b/prolog/problems/trees/maxt_2/bugs.json
new file mode 100644
index 0000000..2f581d1
--- /dev/null
+++ b/prolog/problems/trees/maxt_2/bugs.json
@@ -0,0 +1,382 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"maxT\") (args variable))) (binop variable \"=..\"))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop variable \"=\"))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"t\") (args variable)) (args variable)))))",
+ "(clause (binop \">=\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (compound (functor \"max\") (args (args variable))))",
+ "(clause (binop \">\" variable))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (binop variable \"is\"))",
+ "(clause (binop \"=\" variable))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \"=\" variable))",
+ "(clause (binop variable \">\") (binop \"=\" variable))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (binop variable \">=\") (binop \"=\" variable))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop variable \">\"))",
+ "(clause (binop variable \">=\"))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \"is\" variable))",
+ "(clause (binop variable \">=\") (binop \"is\" variable))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \"is\" variable))",
+ "(clause (binop variable \"=<\"))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (binop \"<\" variable) (binop \"=\" variable))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop variable \">=\"))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (binop variable \">\"))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop variable \">\"))",
+ "(clause (binop variable \">\") (binop \"is\" variable))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))",
+ "(clause (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (binop \"=<\" variable) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"maxSubT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \">\" variable))",
+ "(clause (binop variable \"<\"))",
+ "(clause (head (compound (functor \"maxTList\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop variable \">=\"))",
+ "(clause (compound (functor \"maxTList\") (args (args variable))) (binop \"is\" variable))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))))",
+ "(clause (compound (functor \"maxSubT\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"maxTList\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxSubT\") (args variable)))",
+ "(clause (head (compound (functor \"maxTL\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (binop \"is\" variable))",
+ "(clause (compound (functor \"maxTList\") (args (args variable))) (binop variable \">=\"))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop variable \"=<\"))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \">\" variable))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop variable \"<\"))",
+ "(clause (head (compound (functor \"maxSubT\") (args (list (t variable))))) (compound (functor \"maxSubT\") (args variable)))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop variable \"=<\"))",
+ "(clause (head (compound (functor \"maxSubT\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxTList\") (args variable)))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop variable \"<\"))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \"=<\" variable))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxSubT\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (binop variable \"=\") (binop \"=\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args variable))) (compound (functor \"findall\") (args (args (compound (functor \"memberT\") (args (args variable)))))))",
+ "(clause (compound (functor \"findall\") (args (args (args variable)))) (compound (functor \"max\") (args variable)))",
+ "(clause (compound (functor \"getMaxElems\") (args (args variable))) (compound (functor \"max\") (args (list (t variable)))))",
+ "(clause (binop \"=<\" variable))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \">=\" variable))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"getMaxElems\") (args variable)))",
+ "(clause (head (compound (functor \"maxT\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"maxT\") (args \"[]\"))))",
+ "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"memberT\") (args variable))))))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxTList\") (args (args variable)))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxT\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (head (compound (functor \"maxTList\") (args (list (t variable))))) (compound (functor \"maxTList\") (args variable)))",
+ "(clause (head (compound (functor \"maxTL\") (args (list (t variable))))) (compound (functor \"maxTL\") (args variable)))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \"<\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"maxT\") (args variable))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"getMaxElems\") (args (list (t variable))))) (compound (functor \"getMaxElems\") (args variable)))",
+ "(clause (head (compound (functor \"getMaxElems\") (args (args (list (h variable)))))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"getMaxElems\") (args \"[]\"))))",
+ "(clause (head (compound (functor \"getMaxElems\") (args (args \"[]\")))))",
+ "(clause (head (compound (functor \"getMaxElems\") (args (args (list (t variable)))))) (compound (functor \"getMaxElems\") (args (args variable))))",
+ "(clause (head (compound (functor \"getMaxElems\") (args \"[]\" (args \"[]\")))))",
+ "(clause (head (compound (functor \"getMaxElems\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (binop \"=\" (list (h variable))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \"=\" (list (h variable))))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxSubtree\") (args variable)))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop variable \"=..\"))",
+ "(clause (head (compound (functor \"maxTrees\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (binop variable \"=\") (binop variable \">\"))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxTL\") (args variable)))",
+ "(clause (compound (functor \"maxRek\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (compound (functor \"maxTrees\") (args (args variable))) (binop \"is\" variable))",
+ "(clause (binop \"<\" variable))",
+ "(clause (binop \"=..\" (list (t (list (h variable) (t \"[]\"))))))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (compound (functor \"max\") (args (list (t (list (h variable)))))))",
+ "(clause (head (compound (functor \"memberT\") (args (args variable)))) (binop variable \"=..\"))",
+ "(clause (binop variable \"=..\" (list (t (list (t \"[]\"))))))",
+ "(clause (binop \"=..\" (list (t (list (t \"[]\"))))))",
+ "(clause (binop \"=<\" variable) (binop \"is\" variable))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (compound (functor \"max\") (args (list (t (list (h variable)))))))",
+ "(clause (compound (functor \"maxTL\") (args (args variable))) (binop \">\" variable))",
+ "(clause (compound (functor \"maxTL\") (args (args variable))) (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (head (compound (functor \"maxRek\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop \"<\" variable) (binop \"is\" variable))",
+ "(clause (compound (functor \"maxTList\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args (list (t variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"t\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"maxRek\") (args (list (h (compound (functor \"t\") (args variable)))) (args variable)))))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop \">\" variable))",
+ "(clause (head (compound (functor \"maxTlist\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"t\") (args (args (args variable))))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (head (compound (functor \"maxT\") (args \"[]\" (args \"0\")))))",
+ "(clause (head (compound (functor \"maxList\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (compound (functor \"max\") (args (list (h variable)))))",
+ "(clause (head (compound (functor \"maxList\") (args (list (t variable))))) (compound (functor \"maxList\") (args variable)))",
+ "(clause (head (compound (functor \"maxTL\") (args (args variable)))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxTSub\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxTrees\") (args (args variable))) (binop \">\" variable))",
+ "(clause (compound (functor \"maxTList\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxTSub\") (args variable)))",
+ "(clause (compound (functor \"maxSubtree\") (args (args variable))) (compound (functor \"max\") (args (list (t variable)))))",
+ "(clause (head (compound (functor \"maximum\") (args (args (args variable))))) (binop variable \"=\"))",
+ "(clause (compound (functor \"memberT\") (args variable)) (binop variable \">\"))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxList\") (args variable)))",
+ "(clause (compound (functor \"maxSubT\") (args (args variable))) (compound (functor \"maximum\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxLT\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (head (compound (functor \"max\") (args (args variable)))))",
+ "(clause (head (compound (functor \"maxTree\") (args (args (list (t variable)))))) (compound (functor \"maxTree\") (args (args variable))))",
+ "(clause (compound (functor \"maxTL\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"maxTSub\") (args (args (list (h variable)))))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxTSub\") (args (list (t variable))))) (compound (functor \"maxTSub\") (args variable)))",
+ "(clause (head (compound (functor \"maxSubtree\") (args variable))) (binop variable \"=..\"))",
+ "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))))",
+ "(clause (head (compound (functor \"max\") (args (list (h variable))))))",
+ "(clause (head (compound (functor \"maxTrees\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxRek\") (args variable)))",
+ "(clause (head (compound (functor \"maxSubtree\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (compound (functor \"write\") (args variable)) (binop \"=\" variable))",
+ "(clause (binop variable \"=\") (binop variable \"<\"))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"t\") (args variable))))) (binop \">\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"b\") (args (args variable))) (args variable)))))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxSubT\") (args (args variable))) (binop \"<\" variable))",
+ "(clause (head (compound (functor \"novP\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (compound (functor \"novP\") (args (args variable))) (binop \"=<\" variable))",
+ "(clause (compound (functor \"memberT\") (args variable)) (binop \"is\" variable))",
+ "(clause (compound (functor \"novP\") (args (args variable))) (binop \">\" variable))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxLT\") (args variable)))",
+ "(clause (compound (functor \"write\") (args variable)) (binop variable \"=<\"))",
+ "(clause (head (compound (functor \"maxTL\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (compound (functor \"maxT\") (args variable)) (binop variable \">\"))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxTrees\") (args variable)))",
+ "(clause (head (compound (functor \"maxRek\") (args (list (t variable))))) (compound (functor \"maxRek\") (args variable)))",
+ "(clause (compound (functor \"write\") (args variable)) (binop variable \">\"))",
+ "(clause (binop \">\" variable) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"maxTL\") (args (args variable)))))",
+ "(clause (head (compound (functor \"maxTL\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (compound (functor \"maxTL\") (args (args variable))) (binop \"is\" variable))",
+ "(clause (head (compound (functor \"maxTree\") (args (args (list (h variable)))))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"t\") (args (args variable)))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"novP\") (args (args variable))) (binop \"is\" variable))",
+ "(clause (head (compound (functor \"maxTSub\") (args (args (list (t variable)))))) (compound (functor \"maxTSub\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"t\") (args variable))))) (binop \"=\" variable))",
+ "(clause (compound (functor \"maxT\") (args variable)) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"maxLT\") (args (list (t variable))))) (compound (functor \"maxLT\") (args variable)))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop variable \">\"))",
+ "(clause (head (compound (functor \"maxTrees\") (args (list (t variable))))) (compound (functor \"maxTrees\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxST\") (args variable)))",
+ "(clause (compound (functor \"maxTlist\") (args (args variable))) (binop \"<\" variable))",
+ "(clause (head (compound (functor \"maxST\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxTL\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxST\") (args (args \"[]\")))))",
+ "(clause (head (compound (functor \"maxSubT\") (args \"[]\"))))",
+ "(clause (head (compound (functor \"maxST\") (args (list (t variable))))) (compound (functor \"maxST\") (args variable)))",
+ "(clause (head (compound (functor \"maxST\") (args \"[]\"))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (head (compound (functor \"maxST\") (args \"[]\" (args \"[]\")))))",
+ "(clause (head (compound (functor \"maxSubtree\") (args \"[]\" (args \"[]\")))))",
+ "(clause (head (compound (functor \"maxSubtree\") (args \"[]\"))))",
+ "(clause (head (compound (functor \"maxT\") (args (list (h variable)) (args variable)))))",
+ "(clause (head (compound (functor \"maxSubtree\") (args (args \"[]\")))))",
+ "(clause (compound (functor \"maxST\") (args (args variable))) (binop \"=\" (list (t variable))))",
+ "(clause (compound (functor \"maxTlist\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (binop variable \"is\") (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (compound (functor \"maxLT\") (args (args variable))) (binop \">\" variable))",
+ "(clause (binop \">=\" variable) (binop \"is\" variable))",
+ "(clause (compound (functor \"maxTSub\") (args (args variable))) (compound (functor \"max\") (args (list (t variable)))))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxT\") (args \"[]\" (args \"[]\")))))",
+ "(clause (head (compound (functor \"maxTree\") (args \"[]\" (args \"[]\")))))",
+ "(clause (compound (functor \"maxLT\") (args (args variable))) (binop \"=<\" variable))",
+ "(clause (head (compound (functor \"maxTList\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (compound (functor \"maxRek\") (args (args variable))) (binop variable \">\"))",
+ "(clause (head (compound (functor \"maxT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"maxTlist\") (args variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"maxTree\") (args \"[]\"))))",
+ "(clause (binop \"=\" (list (t variable))) (compound (functor \"maxTlist\") (args variable)))",
+ "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"maxT\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"maxTree\") (args (args \"[]\")))))",
+ "(clause (head (compound (functor \"maxT\") (args (args \"[]\")))))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop \"<\" variable))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (compound (functor \"write\") (args variable)))",
+ "(clause (compound (functor \"maxTL\") (args variable)))",
+ "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"is\" variable))",
+ "(clause (compound (functor \"maxRek\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"maxL\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop \"=..\" variable) (binop variable \"=\"))",
+ "(clause (compound (functor \"maxL\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (binop \">\" variable) (binop \"is\" variable))",
+ "(clause (head (compound (functor \"novP\") (args (list (h variable))))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (head (compound (functor \"maximum\") (args variable))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"maxSubT\") (args (args variable)))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maxT\") (args variable (args (compound (functor \"t\") (args variable)))))))",
+ "(clause (compound (functor \"maxTL\") (args (args variable))) (compound (functor \"max\") (args (list (t (list (h variable)))))))",
+ "(clause (head (compound (functor \"maxSubT\") (args (args variable)))) (compound (functor \"maximum\") (args (args (args variable)))))",
+ "(clause (binop variable \"=..\") (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"findall\") (args (args (compound (functor \"memb\") (args variable)) (compound (functor \"maxT\") (args variable))))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"findall\") (args (args (compound (functor \"memb\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"maxST\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (compound (functor \"maxL\") (args (args variable))) (binop \"<\" variable))",
+ "(clause (compound (functor \"max\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (head (compound (functor \"maximum\") (args (args variable)))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args variable (args variable)))))",
+ "(clause (compound (functor \"maxSubtree\") (args (args variable))) (binop \"=\" (list (t variable))))",
+ "(clause (head (compound (functor \"maximum\") (args (args variable)))) (binop \">\" variable))",
+ "(clause (compound (functor \"maxTList\") (args (args variable))) (binop \"<\" variable))",
+ "(clause (head (compound (functor \"maxList\") (args \"[]\"))))",
+ "(clause (compound (functor \"maxSubT\") (args (args variable))))",
+ "(clause (head (compound (functor \"maximum\") (args variable))) (binop variable \">\"))",
+ "(clause (head (compound (functor \"maxT\") (args (compound (functor \"t\") (args (args (args variable)))) (args variable)))))",
+ "(clause (head (compound (functor \"maxSubT\") (args (args (list (t variable)))))) (compound (functor \"maxSubT\") (args (args variable))))",
+ "(clause (binop \"=\" (list (t variable))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxL\") (args (args variable))) (binop \">=\" variable))",
+ "(clause (head (compound (functor \"maxTL\") (args (args variable)))) (compound (functor \"max\") (args (args variable))))",
+ "(clause (compound (functor \"maxST\") (args (args variable))) (compound (functor \"max\") (args (list (t variable)))))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (compound (functor \"maximum\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \"<\" variable))",
+ "(clause (compound (functor \"maxT\") (args variable)))",
+ "(clause (compound (functor \"maxList\") (args (args variable))) (binop \"<\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args variable))) (compound (functor \"maxT\") (args variable)))",
+ "(clause (head (compound (functor \"maxSubT\") (args (args (list (h variable)))))) (compound (functor \"maxT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxTree\") (args (args variable))))",
+ "(clause (compound (functor \"maxList\") (args (args variable))) (binop \">\" variable))",
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (compound (functor \"maximum\") (args (args (args variable)))))",
+ "(clause (binop \"=\" \"[]\"))",
+ "(clause (compound (functor \"maxT\") (args (args variable))) (compound (functor \"maximum\") (args variable)))",
+ "(clause (binop variable \"=\" \"[]\"))",
+ "(clause (compound (functor \"maxT\") (args variable)) (compound (functor \"maxSubtree\") (args variable)))"
+ ],
+ "rules": [
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"maxT\") (args variable)))"
+ ],
+ "distribution": [
+ 47,
+ 0
+ ],
+ "quality": 0.9584153667682335
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (h variable))))))"
+ ],
+ "distribution": [
+ 45,
+ 0
+ ],
+ "quality": 0.956066696736247
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))"
+ ],
+ "distribution": [
+ 39,
+ 0
+ ],
+ "quality": 0.9471176544792916
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"maxT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 33,
+ 0
+ ],
+ "quality": 0.9342937036806089
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"maxT\") (args (args variable))) (binop \">\" variable))"
+ ],
+ "distribution": [
+ 27,
+ 0
+ ],
+ "quality": 0.9141100017512997
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))) (binop variable \"=\"))"
+ ],
+ "distribution": [
+ 112,
+ 8
+ ],
+ "quality": 0.9066949182918677
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop variable \"=\"))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop variable \">=\"))"
+ ],
+ "distribution": [
+ 34,
+ 0
+ ],
+ "quality": 0.8908437185753054
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"maxT\") (args (args \"0\")))))"
+ ],
+ "distribution": [
+ 22,
+ 0
+ ],
+ "quality": 0.8895311658480561
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"maxT\") (args (args variable)))))"
+ ],
+ "distribution": [
+ 18,
+ 0
+ ],
+ "quality": 0.8529153645194049
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"getMaxElems\") (args variable)))",
+ "(clause (head (compound (functor \"getMaxElems\") (args (list (t variable))))) (compound (functor \"getMaxElems\") (args variable)))"
+ ],
+ "distribution": [
+ 0,
+ 18
+ ],
+ "quality": 0.8442166232913237
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (compound (functor \"findall\") (args (args (args variable)))) (compound (functor \"max\") (args variable)))",
+ "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"memberT\") (args variable))))))"
+ ],
+ "distribution": [
+ 1,
+ 13
+ ],
+ "quality": 0.7129398863248633
+ }
+ ]
+} \ No newline at end of file
diff --git a/prolog/problems/trees/memberbt_2/bugs.json b/prolog/problems/trees/memberbt_2/bugs.json
new file mode 100644
index 0000000..24ab121
--- /dev/null
+++ b/prolog/problems/trees/memberbt_2/bugs.json
@@ -0,0 +1,322 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))",
+ "(clause (compound (functor \"memberBT\") (args variable)))",
+ "(clause (compound (functor \"memberBT\") (args variable)) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (binop variable \"=\"))",
+ "(clause (head (compound (functor \"memberBT\") (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable (args variable)))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (compound (functor \"member\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (compound (functor \"memberBT\") (args variable)) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"member\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"member\") (args (args variable))))",
+ "(clause (binop variable \"\\=\") (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args variable)))))",
+ "(clause (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBR\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (binop variable \"\\=\") (compound (functor \"memberBT\") (args variable)))",
+ "(clause (binop \"=\" variable))",
+ "(clause (head (compound (functor \"memberBT\") (args (args variable)))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (compound (functor \"member\") (args variable)))",
+ "(clause (binop variable \"==\"))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (binop variable \"is\"))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"is\" variable))",
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"b\") (args (args variable)))))",
+ "(clause (compound (functor \"memberBT\") (args variable)) (binop \"=\" variable))",
+ "(clause (binop variable \"is\") (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (binop variable \"\\=\"))",
+ "(clause (binop variable \"=\") (binop variable \"=\"))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"==\" variable))",
+ "(clause (head (compound (functor \"memberBT\") (args variable (args variable)))))",
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (binop variable \"==\"))",
+ "(clause (head (compound (functor \"member\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (list (t (list (h variable)))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop variable \"\\=\"))",
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (binop variable \"\\=\"))",
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (binop variable \"=\") (compound (functor \"memberBT\") (args variable)))",
+ "(clause (compound (functor \"b\") (args (args (args variable)))))",
+ "(clause (head (compound (functor \"memberBR\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBR\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (compound (functor \"b\") (args (args variable))))",
+ "(clause (head (compound (functor \"member\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (compound (functor \"b\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"\\=\" variable))",
+ "(clause (compound (functor \"member\") (args variable)) (compound (functor \"member\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"memberB\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args variable)))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop \"=\" variable))"
+ ],
+ "rules": [
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"memberBT\") (args variable)) (compound (functor \"memberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 91,
+ 0
+ ],
+ "quality": 0.9806574107120732
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (compound (functor \"member\") (args variable)))"
+ ],
+ "distribution": [
+ 23,
+ 0
+ ],
+ "quality": 0.9162605207203031
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))",
+ "(clause (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))))"
+ ],
+ "distribution": [
+ 6,
+ 88
+ ],
+ "quality": 0.901358600101629
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))",
+ "(clause (compound (functor \"memberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 8,
+ 89
+ ],
+ "quality": 0.8841395431693414
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))))"
+ ],
+ "distribution": [
+ 13,
+ 111
+ ],
+ "quality": 0.8678925934418005
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))"
+ ],
+ "distribution": [
+ 20,
+ 0
+ ],
+ "quality": 0.8677075196554401
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"memberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 15,
+ 0
+ ],
+ "quality": 0.8672228487886583
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (compound (functor \"memberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 17,
+ 119
+ ],
+ "quality": 0.8498481937811803
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"memberBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 13,
+ 0
+ ],
+ "quality": 0.8445950967995844
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))))"
+ ],
+ "distribution": [
+ 1,
+ 26
+ ],
+ "quality": 0.8445518795467187
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args (args variable)))))"
+ ],
+ "distribution": [
+ 12,
+ 0
+ ],
+ "quality": 0.8290348333259117
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args variable))))))))"
+ ],
+ "distribution": [
+ 4,
+ 41
+ ],
+ "quality": 0.8241813465267347
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"member\") (args variable)))"
+ ],
+ "distribution": [
+ 10,
+ 0
+ ],
+ "quality": 0.7930377038814806
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"memberBT\") (args variable)) (binop variable \"=\"))"
+ ],
+ "distribution": [
+ 10,
+ 0
+ ],
+ "quality": 0.7930377038814806
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args variable))))))))"
+ ],
+ "distribution": [
+ 6,
+ 42
+ ],
+ "quality": 0.7921836824497472
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"memberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 39,
+ 134
+ ],
+ "quality": 0.7530309477088872
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable (args variable)))))"
+ ],
+ "distribution": [
+ 8,
+ 0
+ ],
+ "quality": 0.7407021745709099
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" variable))"
+ ],
+ "distribution": [
+ 3,
+ 21
+ ],
+ "quality": 0.7090377752382846
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"memberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 7,
+ 0
+ ],
+ "quality": 0.6981908274110581
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberBT\") (args variable))) (compound (functor \"memberBT\") (args variable)))",
+ "(clause (head (compound (functor \"memberBT\") (args variable (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))"
+ ],
+ "distribution": [
+ 59,
+ 136
+ ],
+ "quality": 0.6773900662364584
+ }
+ ]
+} \ No newline at end of file
diff --git a/prolog/problems/trees/membert_2/bugs.json b/prolog/problems/trees/membert_2/bugs.json
new file mode 100644
index 0000000..ba99af8
--- /dev/null
+++ b/prolog/problems/trees/membert_2/bugs.json
@@ -0,0 +1,395 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"memberT\") (args (args variable)))) (binop variable \"=..\"))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable (args (compound (functor \"t\") (args variable)))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop variable \"=\"))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))",
+ "(clause (binop \"=..\" variable) (binop variable \"=\"))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (compound (functor \"memberT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \"=\" variable))",
+ "(clause (binop variable \"=\"))",
+ "(clause (binop \"=..\" (list (h variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memb\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"member\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args variable)))))))",
+ "(clause (compound (functor \"member\") (args variable)) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=\" (list (t (list (h variable))))))",
+ "(clause (binop \"=\" (list (t (list (t variable))))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args (args variable))))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberSubT\") (args variable))) (compound (functor \"memberSubT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop \"=\" (list (t (list (h variable))))))",
+ "(clause (binop \"=\" (list (h variable))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberTL\") (args variable)))",
+ "(clause (binop \"=\" (list (t variable))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberSubT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"memberTL\") (args variable))) (compound (functor \"memberTL\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args (args \"[]\")))))",
+ "(clause (binop variable \"=..\"))",
+ "(clause (head (compound (functor \"memberTL\") (args (args (list (t variable)))))) (compound (functor \"memberTL\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memberSubT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memberTL\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberSubT\") (args (args (list (t variable)))))) (compound (functor \"memberSubT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberSubT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberSubT\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=\" (list (t variable))))",
+ "(clause (head (compound (functor \"memberTL\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"memberTL\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable (args \"[]\")))))",
+ "(clause (head (compound (functor \"memberT\") (args (args variable)))) (binop \"=..\" variable))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"member\") (args variable)))",
+ "(clause (binop variable \"=\") (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args (args (args variable)))))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (compound (functor \"memb\") (args variable)))",
+ "(clause (compound (functor \"memberT\") (args variable)) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberLT\") (args variable))) (compound (functor \"memberLT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args (args (list (t variable)))))))",
+ "(clause (head (compound (functor \"memberLT\") (args (args (list (t variable)))))) (compound (functor \"memberLT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \"==\" variable))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop variable \"==\"))",
+ "(clause (binop variable \"==\"))",
+ "(clause (head (compound (functor \"memberTL\") (args (args (list (t variable)))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberTList\") (args variable)))",
+ "(clause (head (compound (functor \"memberTL\") (args (args (list (h variable)))))))",
+ "(clause (binop \"=\" (list (h variable))))",
+ "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"memberTList\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (list (t variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (h variable) (t (list (h variable))))))",
+ "(clause (head (compound (functor \"memberT\") (args (args variable)))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=\" variable))",
+ "(clause (head (compound (functor \"memberTList\") (args (args (list (t variable)))))) (compound (functor \"memberTList\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberTList\") (args variable))) (compound (functor \"memberTList\") (args variable)))",
+ "(clause (head (compound (functor \"memberTList\") (args (args (list (t variable)))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberLT\") (args variable)))",
+ "(clause (head (compound (functor \"memberTList\") (args (args (list (h variable)))))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"listmemberT\") (args (args variable))))",
+ "(clause (compound (functor \"memberT\") (args variable)) (compound (functor \"memberSubT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args variable (args variable))))))))",
+ "(clause (head (compound (functor \"memberLT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (binop \"=..\" variable))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop variable \"=..\"))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop variable \"=\"))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (compound (functor \"memb\") (args (args (list (h variable))))))",
+ "(clause (binop variable \"=..\") (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberLT\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"iterate\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"iterate\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable (args (list (h variable)))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"listmemberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberTList\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"iterate\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberTList\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"iterate\") (args variable (args \"[]\")))))",
+ "(clause (head (compound (functor \"memberLT\") (args (args (list (h variable)))))))",
+ "(clause (head (compound (functor \"iterate\") (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memberL\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberSubT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop \"=..\" (list (t variable))))",
+ "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberLT\") (args (args (list (t variable)))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberL\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t (list (h variable))))))))",
+ "(clause (head (compound (functor \"iterate\") (args (args \"[]\")))))",
+ "(clause (head (compound (functor \"memberT2\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable (args variable)))))",
+ "(clause (head (compound (functor \"listmemberT\") (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (list (h variable)))))) (binop \"=\" variable))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"for\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop \"=..\" (list (h variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"for\") (args variable)))",
+ "(clause (binop \"=\" (list (h variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"for\") (args variable))))",
+ "(clause (binop \"=..\" (list (t variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"memberT2\") (args (args (list (t variable)))))))",
+ "(clause (binop (list (h variable)) \"=..\"))",
+ "(clause (head (compound (functor \"memberT2\") (args variable))) (compound (functor \"memberT2\") (args variable)))",
+ "(clause (head (compound (functor \"memberT2\") (args (args (list (t variable)))))) (compound (functor \"memberT2\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args variable (args (args variable)))))))))",
+ "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))",
+ "(clause (binop \"=..\" (list (t (list (t (list (h variable))))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT2\") (args (args (list (h variable)))))))",
+ "(clause (head (compound (functor \"listmemberT\") (args (args variable)))) (binop variable \"=..\"))",
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=..\" variable) (compound (functor \"memb\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"iterate\") (args (args variable))))",
+ "(clause (binop variable \"=\") (compound (functor \"memberL\") (args variable)))",
+ "(clause (head (compound (functor \"memberT2\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"member\") (args variable))))",
+ "(clause (binop \"=..\" (list (h variable) (t (list (t variable))))))",
+ "(clause (head (compound (functor \"listmemberT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))",
+ "(clause (compound (functor \"member\") (args variable)))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"member\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberSubTs\") (args variable)))",
+ "(clause (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"cycleTreeList\") (args (args variable))))",
+ "(clause (head (compound (functor \"for\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable (args (list (t (list (h variable)))))))))",
+ "(clause (head (compound (functor \"cycleTreeList\") (args variable))) (compound (functor \"cycleTreeList\") (args variable)))",
+ "(clause (head (compound (functor \"cycleTreeList\") (args (args (list (t variable)))))) (compound (functor \"cycleTreeList\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args (args variable)))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memberSubTs\") (args (args variable))))",
+ "(clause (head (compound (functor \"cycleTreeList\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"cycleTreeList\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"cycleTreeList\") (args variable)))",
+ "(clause (head (compound (functor \"for\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"for\") (args variable))) (compound (functor \"for\") (args variable)))",
+ "(clause (head (compound (functor \"for\") (args (args (list (t variable)))))) (compound (functor \"for\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (binop \"=\" (list (t variable))) (compound (functor \"memberT2\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberList\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberT2\") (args variable)))",
+ "(clause (compound (functor \"memberLT\") (args variable)))",
+ "(clause (head (compound (functor \"for\") (args (args \"[]\")))))",
+ "(clause (head (compound (functor \"memberL\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberList\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberList\") (args variable))) (compound (functor \"memberList\") (args variable)))",
+ "(clause (head (compound (functor \"memberL\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberL\") (args (args (list (t variable)))))) (compound (functor \"memberL\") (args (args variable))))",
+ "(clause (head (compound (functor \"iterate\") (args variable))) (compound (functor \"iterate\") (args variable)))",
+ "(clause (head (compound (functor \"memberSubT\") (args (args \"[]\")))))",
+ "(clause (binop \"=\" (compound (functor \"t\") (args (list (h variable))))))",
+ "(clause (head (compound (functor \"memberL\") (args variable))) (compound (functor \"memberL\") (args variable)))",
+ "(clause (head (compound (functor \"memberList\") (args (args (list (h variable)))))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (head (compound (functor \"memberT\") (args (args (list (t (list (t variable)))))))))",
+ "(clause (head (compound (functor \"memberList\") (args (args (list (t variable)))))) (compound (functor \"memberList\") (args (args variable))))",
+ "(clause (head (compound (functor \"listmemberT\") (args variable))) (compound (functor \"listmemberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args \"[]\"))))",
+ "(clause (head (compound (functor \"for\") (args variable (args \"[]\")))))",
+ "(clause (head (compound (functor \"iterate\") (args (args (list (t variable)))))) (compound (functor \"iterate\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t variable))) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=\" variable) (compound (functor \"memberT\") (args (args variable))))"
+ ],
+ "rules": [
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memb\") (args variable)))"
+ ],
+ "distribution": [
+ 38,
+ 0
+ ],
+ "quality": 0.9477918569999918
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args variable))))"
+ ],
+ "distribution": [
+ 77,
+ 2
+ ],
+ "quality": 0.9450392289762145
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args variable)))))))"
+ ],
+ "distribution": [
+ 33,
+ 0
+ ],
+ "quality": 0.9376153383664049
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args (args variable))))))) (compound (functor \"memberT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 31,
+ 0
+ ],
+ "quality": 0.9324479060158665
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args variable (args (compound (functor \"t\") (args variable)))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberT\") (args variable)))"
+ ],
+ "distribution": [
+ 97,
+ 5
+ ],
+ "quality": 0.908925434188538
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (t variable))))))",
+ "(clause (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))"
+ ],
+ "distribution": [
+ 1,
+ 45
+ ],
+ "quality": 0.9028001685740287
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memberT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 1,
+ 39
+ ],
+ "quality": 0.8867339352376526
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"member\") (args (args variable))))"
+ ],
+ "distribution": [
+ 0,
+ 25
+ ],
+ "quality": 0.8777473018719896
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (h variable))))) (compound (functor \"memberT\") (args variable)))"
+ ],
+ "distribution": [
+ 19,
+ 0
+ ],
+ "quality": 0.8753375177706785
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args (args variable))))))))"
+ ],
+ "distribution": [
+ 19,
+ 0
+ ],
+ "quality": 0.8753375177706785
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"member\") (args variable)))"
+ ],
+ "distribution": [
+ 18,
+ 0
+ ],
+ "quality": 0.8669133299232545
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"member\") (args (args variable))))"
+ ],
+ "distribution": [
+ 1,
+ 27
+ ],
+ "quality": 0.8618076165001656
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args (args (compound (functor \"t\") (args (args (args variable)))))))) (compound (functor \"memberT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 17,
+ 0
+ ],
+ "quality": 0.8566770246851257
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"memb\") (args variable)))"
+ ],
+ "distribution": [
+ 16,
+ 0
+ ],
+ "quality": 0.8452156416525107
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (binop \"=..\" (list (t (list (t variable))))))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memberT\") (args (args variable))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))"
+ ],
+ "distribution": [
+ 6,
+ 46
+ ],
+ "quality": 0.8169393965315925
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args variable))) (binop \"=..\" (list (t (list (h variable))))))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memberT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 9,
+ 41
+ ],
+ "quality": 0.7449330956358762
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberT\") (args (args variable)))) (binop variable \"=..\"))",
+ "(clause (binop \"=..\" (list (t (list (t variable))))) (compound (functor \"memb\") (args (args variable))))",
+ "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memberT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 14,
+ 50
+ ],
+ "quality": 0.7214401235088052
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"memberTList\") (args variable))) (compound (functor \"memberT\") (args variable)))",
+ "(clause (head (compound (functor \"memberT\") (args variable))) (compound (functor \"memberTList\") (args variable)))"
+ ],
+ "distribution": [
+ 0,
+ 8
+ ],
+ "quality": 0.6680508675885589
+ }
+ ]
+} \ No newline at end of file
diff --git a/prolog/problems/trees/mirrorbt_2/bugs.json b/prolog/problems/trees/mirrorbt_2/bugs.json
new file mode 100644
index 0000000..9cddfa0
--- /dev/null
+++ b/prolog/problems/trees/mirrorbt_2/bugs.json
@@ -0,0 +1,300 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable))) (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (head variable))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (binop variable \"=\"))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (compound (functor \"var\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args variable (args variable)))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))))",
+ "(clause (binop variable \"=\") (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args variable))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable (args (args variable))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop \"=\" variable))",
+ "(clause (compound (functor \"mirrorBT\") (args variable)) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable)))))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"mirror\") (args variable)))",
+ "(clause (compound (functor \"mirrorBT\") (args variable)) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (binop variable \"=\") (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args \"[]\"))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"mirror\") (args variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable (args (args variable)))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable))) (args variable)))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"var\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"var\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"=\" variable))",
+ "(clause (compound (functor \"mirror\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args variable))))",
+ "(clause (binop \"=\" variable) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args \"[]\")))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args variable))))))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable)))))) (binop variable \"=\"))",
+ "(clause (compound (functor \"var\") (args variable)) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args \"[]\" (args \"[]\")))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args (args variable)))))))) (binop variable \"=\"))",
+ "(clause (compound (functor \"mirror\") (args (args variable))) (binop \"=\" (compound (functor \"b\") (args (args (args variable))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable)))))))",
+ "(clause (binop (compound (functor \"depthBT\") (args variable)) \"=\" \"1\"))",
+ "(clause (compound (functor \"mirrorBT\") (args variable)) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable)))))) (binop \"is\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"mirrorBt\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"mirrotBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"mirrorBT\") (args variable)))",
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))) (binop \"=\" variable))",
+ "(clause (binop \"=\" \"1\"))",
+ "(clause (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args variable))))))",
+ "(clause (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (compound (functor \"depthBT\") (args variable)))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))",
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))) (binop \"=\" variable))",
+ "(clause (head (compound (functor \"mirrotBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"mirrorBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args (compound (functor \"b\") (args (args variable))))))) (args (compound (functor \"b\") (args (compound (functor \"b\") (args (args variable))))))))))",
+ "(clause (head (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args variable)))))) (compound (functor \"mirrorBT\") (args (args (compound (functor \"b\") (args (args variable)))))))"
+ ],
+ "rules": [
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"mirrorBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 48,
+ 0
+ ],
+ "quality": 0.9654913037362992
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop \"=\" (compound (functor \"b\") (args variable))))"
+ ],
+ "distribution": [
+ 47,
+ 0
+ ],
+ "quality": 0.9646532649442093
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args (args (args variable)))))))))"
+ ],
+ "distribution": [
+ 136,
+ 4
+ ],
+ "quality": 0.9567501799346745
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable)))) (args (compound (functor \"b\") (args variable)))))))"
+ ],
+ "distribution": [
+ 134,
+ 4
+ ],
+ "quality": 0.9560559589329861
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))) (compound (functor \"mirrorBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 28,
+ 0
+ ],
+ "quality": 0.9349190623536209
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))))"
+ ],
+ "distribution": [
+ 26,
+ 0
+ ],
+ "quality": 0.9289235930419703
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"mirrorBT\") (args variable)))"
+ ],
+ "distribution": [
+ 23,
+ 0
+ ],
+ "quality": 0.9196076551396587
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (args variable)))))"
+ ],
+ "distribution": [
+ 22,
+ 0
+ ],
+ "quality": 0.9150210312301716
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args variable (args variable)))))"
+ ],
+ "distribution": [
+ 20,
+ 0
+ ],
+ "quality": 0.904848113180471
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args variable)))))))"
+ ],
+ "distribution": [
+ 17,
+ 0
+ ],
+ "quality": 0.8839111544291791
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))))"
+ ],
+ "distribution": [
+ 16,
+ 0
+ ],
+ "quality": 0.8749968452423105
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (binop variable \"=\"))"
+ ],
+ "distribution": [
+ 15,
+ 0
+ ],
+ "quality": 0.8670760925419618
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))))"
+ ],
+ "distribution": [
+ 15,
+ 0
+ ],
+ "quality": 0.8670760925419618
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable (args (args variable))))))))"
+ ],
+ "distribution": [
+ 14,
+ 0
+ ],
+ "quality": 0.8547590265925697
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head variable))"
+ ],
+ "distribution": [
+ 14,
+ 0
+ ],
+ "quality": 0.8547590265925697
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable)) (args (compound (functor \"b\") (args variable)))))))"
+ ],
+ "distribution": [
+ 13,
+ 0
+ ],
+ "quality": 0.8445220449617675
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"mirrorBT\") (args variable)) (binop \"=\" (compound (functor \"b\") (args variable))))"
+ ],
+ "distribution": [
+ 13,
+ 0
+ ],
+ "quality": 0.8445220449617675
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"mirrorBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"mirror\") (args variable)))"
+ ],
+ "distribution": [
+ 12,
+ 0
+ ],
+ "quality": 0.8341617279977557
+ }
+ ]
+} \ No newline at end of file
diff --git a/prolog/problems/trees/numberbt_2/bugs.json b/prolog/problems/trees/numberbt_2/bugs.json
new file mode 100644
index 0000000..3034ce9
--- /dev/null
+++ b/prolog/problems/trees/numberbt_2/bugs.json
@@ -0,0 +1,365 @@
+{
+ "patterns": [
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (binop \"is\" (binop \"+\" \"1\")))",
+ "(clause (binop variable \"is\" (binop \"+\" \"1\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))",
+ "(clause (binop \"is\" (binop (binop \"+\" variable) \"+\" \"1\")))",
+ "(clause (binop \"is\" (binop (binop variable \"+\") \"+\" \"1\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop \"is\" (binop variable \"+\" \"1\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"1\")))))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args variable))) (args \"1\")))))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"=\"))",
+ "(clause (binop variable \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (binop variable \"is\") (binop variable \"is\"))",
+ "(clause (binop \"is\" (binop variable \"+\")) (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (binop \"is\" (binop (binop \"1\" \"+\") \"+\")))",
+ "(clause (binop \"is\" (binop (binop \"1\" \"+\" variable) \"+\")))",
+ "(clause (binop variable \"is\" (binop (binop \"1\" \"+\") \"+\")))",
+ "(clause (binop variable \"is\") (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args variable))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (binop \"is\" (binop (binop \"1\" \"+\") \"+\" variable)))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args variable)))))",
+ "(clause (head (compound (functor \"numberBT\") (args variable))) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (binop \"=\" (compound (functor \"b\") (args (args (args variable))))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (binop variable \"=\" (binop \"+\" \"1\")))",
+ "(clause (binop \"=\" (binop \"+\" \"1\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop variable \"is\"))",
+ "(clause (binop \"is\" \"1\"))",
+ "(clause (binop variable \"is\" \"1\"))",
+ "(clause (binop \"=\" (binop (binop variable \"+\") \"+\" \"1\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"=\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (binop \"=\" (binop (binop \"+\" variable) \"+\" \"1\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"=\" (binop (binop \"+\" variable) \"+\")))",
+ "(clause (compound (functor \"numberBT\") (args variable)))",
+ "(clause (binop variable \"=\" \"0\"))",
+ "(clause (binop variable \"is\" \"0\"))",
+ "(clause (binop \"=\" \"0\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"number\") (args variable)))",
+ "(clause (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args variable))) (compound (functor \"deleteBT\") (args (args variable))))",
+ "(clause (binop \"is\" \"0\"))",
+ "(clause (binop \"is\" (binop variable \"+\")) (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"=\" (binop variable \"+\")))",
+ "(clause (compound (functor \"numberBT\") (args variable)) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (binop \"is\" (binop \"+\" variable)) (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"number\") (args variable)))",
+ "(clause (compound (functor \"deleteBT\") (args (args (args variable)))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (binop \"is\" (binop variable \"+\")))",
+ "(clause (binop variable \"is\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args variable))) (args \"0\")))))",
+ "(clause (binop \"is\" (binop variable \"+\")) (binop variable \"is\"))",
+ "(clause (binop variable \"is\") (binop \"is\" (binop \"+\" variable)))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args variable (args variable))))))))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable (args variable)))))))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop \"is\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (binop variable \"=\") (binop \"is\" (binop variable \"+\")))",
+ "(clause (compound (functor \"number\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable (args (args variable))))))))",
+ "(clause (compound (functor \"number\") (args variable)))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"=\" (binop \"+\" variable)))",
+ "(clause (binop variable \"is\" (binop \"+\" \"2\")))",
+ "(clause (compound (functor \"deleteBT\") (args variable)))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"nubberBT\") (args variable)))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable)))) (args \"0\")))))",
+ "(clause (binop \"is\" (binop \"+\" \"2\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable)) (args \"0\")))))",
+ "(clause (compound (functor \"number\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (compound (functor \"number\") (args variable)))",
+ "(clause (compound (functor \"number\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (binop \"is\" (binop \"1\" \"+\" variable)))",
+ "(clause (binop variable \"is\" (binop \"1\" \"+\")))",
+ "(clause (binop variable \"is\") (binop \"is\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (binop \"is\" (binop (binop \"+\" variable) \"+\")) (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (binop variable \"=\" \"1\"))",
+ "(clause (binop \"is\" (binop \"1\" \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable))))))",
+ "(clause (binop \"=\" \"1\"))",
+ "(clause (binop \"is\" (binop (binop variable \"+\") \"+\")) (compound (functor \"numberBT\") (args (args variable))))",
+ "(clause (compound (functor \"number\") (args variable)) (binop \"is\" (binop variable \"+\")))",
+ "(clause (head (binop \"=\" \"0\")))",
+ "(clause (compound (functor \"deleteBT\") (args variable)) (binop variable \"=\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"nuberBT\") (args variable)))",
+ "(clause (head (compound (functor \"numberBT\") (args variable))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (head (compound (functor \"numberBT\") (args variable))))",
+ "(clause (head (binop variable \"=\" \"0\")))",
+ "(clause (head (binop variable \"=\")))",
+ "(clause (compound (functor \"number\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))"
+ ],
+ "rules": [
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop \"is\" (binop variable \"+\")))"
+ ],
+ "distribution": [
+ 49,
+ 0
+ ],
+ "quality": 0.9615920968387124
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop variable \"is\" (binop variable \"+\")))"
+ ],
+ "distribution": [
+ 41,
+ 0
+ ],
+ "quality": 0.9531854810492415
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"=\"))"
+ ],
+ "distribution": [
+ 47,
+ 1
+ ],
+ "quality": 0.9335975299637356
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (compound (functor \"numberBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 29,
+ 0
+ ],
+ "quality": 0.9299807777479073
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))))"
+ ],
+ "distribution": [
+ 28,
+ 0
+ ],
+ "quality": 0.9272767599144167
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))",
+ "(clause (binop \"is\" (binop (binop \"+\" variable) \"+\" \"1\")))"
+ ],
+ "distribution": [
+ 10,
+ 150
+ ],
+ "quality": 0.916718561401038
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"is\" (binop variable \"+\")) (compound (functor \"numberBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 22,
+ 0
+ ],
+ "quality": 0.9048234469803704
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop variable \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"1\")))))"
+ ],
+ "distribution": [
+ 40,
+ 1
+ ],
+ "quality": 0.9011037968169242
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))"
+ ],
+ "distribution": [
+ 15,
+ 151
+ ],
+ "quality": 0.8902530976736028
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))",
+ "(clause (binop \"is\" (binop (binop variable \"+\") \"+\" \"1\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))"
+ ],
+ "distribution": [
+ 17,
+ 155
+ ],
+ "quality": 0.8812322919386367
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"numberBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 17,
+ 0
+ ],
+ "quality": 0.8727982021305202
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (binop \"is\" (binop \"+\" \"1\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"+\")))"
+ ],
+ "distribution": [
+ 21,
+ 156
+ ],
+ "quality": 0.8629739475464352
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"numberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 23,
+ 165
+ ],
+ "quality": 0.8597636241269335
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (binop \"is\" (binop variable \"+\" \"1\")))",
+ "(clause (binop variable \"is\") (binop variable \"is\"))"
+ ],
+ "distribution": [
+ 20,
+ 0
+ ],
+ "quality": 0.8464792884804369
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"number\") (args variable)))"
+ ],
+ "distribution": [
+ 14,
+ 0
+ ],
+ "quality": 0.8394219791909547
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (compound (functor \"numberBT\") (args (args variable))))"
+ ],
+ "distribution": [
+ 14,
+ 0
+ ],
+ "quality": 0.8394219791909547
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"numberBT\") (args variable)) (compound (functor \"numberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 13,
+ 0
+ ],
+ "quality": 0.8246002580197109
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args variable))))) (compound (functor \"numberBT\") (args variable)))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))"
+ ],
+ "distribution": [
+ 32,
+ 168
+ ],
+ "quality": 0.824115058843779
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"+\")))"
+ ],
+ "distribution": [
+ 35,
+ 173
+ ],
+ "quality": 0.8177866715087209
+ },
+ {
+ "class": false,
+ "condition": [
+ "(clause (compound (functor \"numberBT\") (args (args variable))) (binop variable \"is\"))"
+ ],
+ "distribution": [
+ 12,
+ 0
+ ],
+ "quality": 0.806489396040665
+ },
+ {
+ "class": true,
+ "condition": [
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args variable)))))))",
+ "(clause (head (compound (functor \"numberBT\") (args (args \"0\")))))",
+ "(clause (head (compound (functor \"numberBT\") (args (args variable)))) (binop variable \"is\"))",
+ "(clause (binop \"is\" (binop \"+\" \"1\")))",
+ "(clause (head (compound (functor \"numberBT\") (args (compound (functor \"b\") (args (args (args variable))))))) (compound (functor \"numberBT\") (args variable)))"
+ ],
+ "distribution": [
+ 65,
+ 160
+ ],
+ "quality": 0.6934287185293813
+ }
+ ]
+} \ No newline at end of file