From 92c49ac708e04e545da6e7aafe91cac8f223f475 Mon Sep 17 00:00:00 2001 From: Timotej Lazar Date: Mon, 27 Feb 2017 18:35:01 +0100 Subject: Prolog: add bugs files for the first six groups --- .../problems/family_relations/ancestor_2/bugs.json | 260 ++++++ prolog/problems/family_relations/aunt_2/bugs.json | 252 ++++++ .../problems/family_relations/brother_2/bugs.json | 115 +++ .../problems/family_relations/cousin_2/bugs.json | 547 +++++++++++++ .../family_relations/descendant_2/bugs.json | 251 ++++++ .../family_relations/grandparent_2/bugs.json | 134 +++ .../problems/family_relations/mother_2/bugs.json | 84 ++ .../problems/family_relations/sister_2/bugs.json | 340 ++++++++ prolog/problems/lists/conc_3/bugs.json | 623 ++++++++++++++ prolog/problems/lists/del_3/bugs.json | 833 +++++++++++++++++++ prolog/problems/lists/divide_3/bugs.json | 597 ++++++++++++++ prolog/problems/lists/dup_2/bugs.json | 537 ++++++++++++ prolog/problems/lists/insert_3/bugs.json | 669 +++++++++++++++ prolog/problems/lists/memb_2/bugs.json | 419 ++++++++++ prolog/problems/lists/permute_2/bugs.json | 452 +++++++++++ prolog/problems/lists_advanced/len_2/bugs.json | 371 +++++++++ prolog/problems/lists_advanced/max_2/bugs.json | 467 +++++++++++ prolog/problems/lists_advanced/min_2/bugs.json | 704 ++++++++++++++++ .../problems/lists_advanced/palindrome_1/bugs.json | 403 +++++++++ prolog/problems/lists_advanced/rev_2/bugs.json | 610 ++++++++++++++ .../problems/lists_advanced/shiftleft_2/bugs.json | 349 ++++++++ .../problems/lists_advanced/shiftright_2/bugs.json | 464 +++++++++++ prolog/problems/lists_advanced/sublist_2/bugs.json | 527 ++++++++++++ prolog/problems/lists_advanced/sum_2/bugs.json | 403 +++++++++ prolog/problems/sets/count_3/bugs.json | 509 ++++++++++++ prolog/problems/sets/diff_3/bugs.json | 320 ++++++++ prolog/problems/sets/intersect_3/bugs.json | 496 ++++++++++++ prolog/problems/sets/is_superset_2/bugs.json | 311 +++++++ prolog/problems/sets/powerset_2/bugs.json | 219 +++++ prolog/problems/sets/subset_2/bugs.json | 235 ++++++ prolog/problems/sets/union_3/bugs.json | 715 ++++++++++++++++ prolog/problems/sorting/is_sorted_1/bugs.json | 287 +++++++ prolog/problems/sorting/isort_2/bugs.json | 390 +++++++++ prolog/problems/sorting/pivoting_4/bugs.json | 614 ++++++++++++++ prolog/problems/sorting/quick_sort_2/bugs.json | 594 ++++++++++++++ prolog/problems/sorting/sins_3/bugs.json | 900 +++++++++++++++++++++ .../problems/sorting/slowest_sort_ever_2/bugs.json | 245 ++++++ 37 files changed, 16246 insertions(+) create mode 100644 prolog/problems/family_relations/ancestor_2/bugs.json create mode 100644 prolog/problems/family_relations/aunt_2/bugs.json create mode 100644 prolog/problems/family_relations/brother_2/bugs.json create mode 100644 prolog/problems/family_relations/cousin_2/bugs.json create mode 100644 prolog/problems/family_relations/descendant_2/bugs.json create mode 100644 prolog/problems/family_relations/grandparent_2/bugs.json create mode 100644 prolog/problems/family_relations/mother_2/bugs.json create mode 100644 prolog/problems/family_relations/sister_2/bugs.json create mode 100644 prolog/problems/lists/conc_3/bugs.json create mode 100644 prolog/problems/lists/del_3/bugs.json create mode 100644 prolog/problems/lists/divide_3/bugs.json create mode 100644 prolog/problems/lists/dup_2/bugs.json create mode 100644 prolog/problems/lists/insert_3/bugs.json create mode 100644 prolog/problems/lists/memb_2/bugs.json create mode 100644 prolog/problems/lists/permute_2/bugs.json create mode 100644 prolog/problems/lists_advanced/len_2/bugs.json create mode 100644 prolog/problems/lists_advanced/max_2/bugs.json create mode 100644 prolog/problems/lists_advanced/min_2/bugs.json create mode 100644 prolog/problems/lists_advanced/palindrome_1/bugs.json create mode 100644 prolog/problems/lists_advanced/rev_2/bugs.json create mode 100644 prolog/problems/lists_advanced/shiftleft_2/bugs.json create mode 100644 prolog/problems/lists_advanced/shiftright_2/bugs.json create mode 100644 prolog/problems/lists_advanced/sublist_2/bugs.json create mode 100644 prolog/problems/lists_advanced/sum_2/bugs.json create mode 100644 prolog/problems/sets/count_3/bugs.json create mode 100644 prolog/problems/sets/diff_3/bugs.json create mode 100644 prolog/problems/sets/intersect_3/bugs.json create mode 100644 prolog/problems/sets/is_superset_2/bugs.json create mode 100644 prolog/problems/sets/powerset_2/bugs.json create mode 100644 prolog/problems/sets/subset_2/bugs.json create mode 100644 prolog/problems/sets/union_3/bugs.json create mode 100644 prolog/problems/sorting/is_sorted_1/bugs.json create mode 100644 prolog/problems/sorting/isort_2/bugs.json create mode 100644 prolog/problems/sorting/pivoting_4/bugs.json create mode 100644 prolog/problems/sorting/quick_sort_2/bugs.json create mode 100644 prolog/problems/sorting/sins_3/bugs.json create mode 100644 prolog/problems/sorting/slowest_sort_ever_2/bugs.json diff --git a/prolog/problems/family_relations/ancestor_2/bugs.json b/prolog/problems/family_relations/ancestor_2/bugs.json new file mode 100644 index 0000000..f56f5c7 --- /dev/null +++ b/prolog/problems/family_relations/ancestor_2/bugs.json @@ -0,0 +1,260 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"ancestor\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"ancestor\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"ancestor\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))))", + "(clause (head (compound (functor \"ancestor\") (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"ancestor\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"ancestor\") (args variable)))", + "(clause (compound (functor \"ancestor\") (args (args variable))))", + "(clause (binop variable \"==\"))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"grandparent\") (args (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"grandparent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (binop \"==\" variable))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (binop \"\\=\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"==\"))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\=\"))", + "(clause (compound (functor \"ancestor\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (binop \"==\" variable))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (binop \"==\" variable))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (binop variable \"is\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"ancestor\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"ancestor\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"ancestor\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"is\"))", + "(clause (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"ancestor\") (args variable)) (compound (functor \"brother\") (args (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"ancestor\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (binop \"\\==\" variable) (compound (functor \"parent\") (args (args variable))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"ancestor\") (args variable)))" + ], + "distribution": [ + 49, + 0 + ], + "quality": 0.9629885382291584 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"ancestor\") (args (args variable))))" + ], + "distribution": [ + 39, + 0 + ], + "quality": 0.9541530529030873 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"ancestor\") (args variable)))" + ], + "distribution": [ + 6, + 170 + ], + "quality": 0.9514788098199769 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args (args variable)))))" + ], + "distribution": [ + 34, + 0 + ], + "quality": 0.9470223522722367 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9453306576768873 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"ancestor\") (args variable)))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9453306576768873 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args variable))))" + ], + "distribution": [ + 32, + 0 + ], + "quality": 0.9435307541149079 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9416119920933244 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"ancestor\") (args (args variable))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.9157923393616936 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.884763343524827 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8655912886026441 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"ancestor\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"ancestor\") (args (args variable))))" + ], + "distribution": [ + 10, + 79 + ], + "quality": 0.8502921553589384 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"ancestor\") (args (args variable))))" + ], + "distribution": [ + 52, + 172 + ], + "quality": 0.7525612821040794 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7358835810639816 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"sister\") (args variable)))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.7012043532450386 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.7012043532450386 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"ancestor\") (args (args variable))) (binop \"\\==\" variable))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6649699835988584 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"ancestor\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"ancestor\") (args variable))) (compound (functor \"ancestor\") (args variable)))" + ], + "distribution": [ + 43, + 84 + ], + "quality": 0.6159501919553191 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/family_relations/aunt_2/bugs.json b/prolog/problems/family_relations/aunt_2/bugs.json new file mode 100644 index 0000000..3dfc1db --- /dev/null +++ b/prolog/problems/family_relations/aunt_2/bugs.json @@ -0,0 +1,252 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"sister\") (args variable)))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"sister\") (args variable)))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args variable)))", + "(clause (head (compound (functor \"aunt\") (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"mother\") (args (args variable))))", + "(clause (head (compound (functor \"aunt\") (args (args variable)))))", + "(clause (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\==\"))", + "(clause (compound (functor \"sister\") (args variable)))", + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"brother\") (args variable)))", + "(clause (head (compound (functor \"aunt\") (args variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"aunt\") (args variable))))", + "(clause (compound (functor \"mother\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (head (compound (functor \"aunt\") (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"brother\") (args (args variable))))", + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"female\") (args variable)) (binop \"\\==\" variable))", + "(clause (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"sister\") (args variable)) (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args variable)))", + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (binop \"\\=\" variable))", + "(clause (compound (functor \"sister\") (args variable)) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"sister\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"brother\") (args (args variable))))", + "(clause (binop variable \"\\==\") (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"sister\") (args variable)) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"aunt\") (args variable))) (binop \"\\=\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\=\"))" + ], + "rules": [ + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"sister\") (args (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 1, + 65 + ], + "quality": 0.947889568617913 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args (args variable))))" + ], + "distribution": [ + 7, + 151 + ], + "quality": 0.9379739504789125 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.914813761663181 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args (args variable)))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8970351219221164 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"sister\") (args (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8783140596236834 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args variable))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8622447942091449 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"mother\") (args variable)) (compound (functor \"sister\") (args (args variable))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8526064437591069 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8415381256574634 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8415381256574634 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"sister\") (args variable)))" + ], + "distribution": [ + 48, + 217 + ], + "quality": 0.8109202887628649 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sister\") (args (args variable))) (binop variable \"\\==\"))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.8101710193035057 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args (args variable)))) (compound (functor \"sister\") (args variable)))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.792429870081551 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"aunt\") (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7676282421060165 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7381905943393422 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7045898992557954 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6624455004031453 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/family_relations/brother_2/bugs.json b/prolog/problems/family_relations/brother_2/bugs.json new file mode 100644 index 0000000..252bcdf --- /dev/null +++ b/prolog/problems/family_relations/brother_2/bugs.json @@ -0,0 +1,115 @@ +{ + "patterns": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"brother\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"brother\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"brother\") (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (head (compound (functor \"brother\") (args variable))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"brother\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (compound (functor \"male\") (args variable)) (binop variable \"\\==\"))", + "(clause (compound (functor \"male\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"brother\") (args (args variable)))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"brother\") (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (compound (functor \"male\") (args variable)) (binop variable \"\\=\"))", + "(clause (binop variable \"\\==\") (compound (functor \"male\") (args variable)))", + "(clause (binop variable \"\\=\") (compound (functor \"male\") (args variable)))", + "(clause (binop \"\\=\" variable) (compound (functor \"parent\") (args (args variable))))", + "(clause (binop variable \"\\=\") (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"brother\") (args (args variable)))) (compound (functor \"not\") (args (binop \"=\" variable))))", + "(clause (head (compound (functor \"brother\") (args variable))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"brother\") (args (args variable)))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"brother\") (args variable))) (compound (functor \"not\") (args (binop variable \"=\"))))" + ], + "rules": [ + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"brother\") (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))" + ], + "distribution": [ + 0, + 102 + ], + "quality": 0.9873786600439431 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"brother\") (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"brother\") (args (args variable)))) (binop \"\\=\" variable))" + ], + "distribution": [ + 0, + 39 + ], + "quality": 0.9574307072764063 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (compound (functor \"male\") (args variable)) (binop variable \"\\=\"))" + ], + "distribution": [ + 0, + 34 + ], + "quality": 0.9526649947812729 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"brother\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))" + ], + "distribution": [ + 4, + 102 + ], + "quality": 0.9462163947101927 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"brother\") (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))" + ], + "distribution": [ + 1, + 43 + ], + "quality": 0.9357128569764824 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"brother\") (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"male\") (args variable)))" + ], + "distribution": [ + 9, + 80 + ], + "quality": 0.8661764695637234 + }, + { + "class": false, + "condition": [ + "(clause (binop \"\\=\" variable) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7899147086754702 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/family_relations/cousin_2/bugs.json b/prolog/problems/family_relations/cousin_2/bugs.json new file mode 100644 index 0000000..cf1bafe --- /dev/null +++ b/prolog/problems/family_relations/cousin_2/bugs.json @@ -0,0 +1,547 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"cousin\") (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"grandparent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"grandparent\") (args (args variable))))", + "(clause (compound (functor \"grandparent\") (args variable)) (compound (functor \"grandparent\") (args variable)))", + "(clause (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"grandparent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"brother\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (compound (functor \"sister\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"cousin\") (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (binop \"\\=\" variable))", + "(clause (compound (functor \"brother\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\=\" variable))", + "(clause (compound (functor \"sister\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (binop variable \"\\==\") (compound (functor \"parent\") (args (args variable))))", + "(clause (binop \"\\==\" variable) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (binop variable \"\\==\")))", + "(clause (head (binop \"\\==\" variable)))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"aunt\") (args (args variable))))", + "(clause (compound (functor \"aunt\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (binop variable \"\\==\") (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"aunt\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sibling\") (args variable)))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (binop variable \"\\=\"))", + "(clause (binop \"\\==\" variable) (compound (functor \"sister\") (args (args variable))))", + "(clause (binop variable \"\\==\") (compound (functor \"sister\") (args variable)))", + "(clause (head (compound (functor \"sibling\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sibling\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (binop variable \"\\==\"))", + "(clause (compound (functor \"aunt\") (args variable)))", + "(clause (binop \"\\==\" variable))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"aunt\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"aunt\") (args variable)))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))))", + "(clause (head (compound (functor \"parent\") (args variable))))", + "(clause (head (compound (functor \"parent\") (args (args variable)))))", + "(clause (binop \"\\==\" variable) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sibling\") (args (args variable))))", + "(clause (binop \"\\==\" variable) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"sister\") (args variable)))", + "(clause (binop variable \"\\==\") (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"grandparent\") (args variable)))", + "(clause (compound (functor \"male\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"sister\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"uncle\") (args (args variable))))", + "(clause (compound (functor \"sibling\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"sister\") (args variable)) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (binop (compound (functor \"parent\") (args (args variable))) \"\\==\"))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (binop \"\\==\" (compound (functor \"parent\") (args (args variable)))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (binop (compound (functor \"parent\") (args (args variable))) \"\\==\"))", + "(clause (head (compound (functor \"rel\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (binop \"\\==\" variable) (binop \"\\==\" variable))", + "(clause (compound (functor \"brother\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"grandparent\") (args (args variable))) (binop \"\\==\" (compound (functor \"parent\") (args (args variable)))))", + "(clause (compound (functor \"male\") (args variable)) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"uncle\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"brother\") (args variable)) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"brother\") (args (args variable))) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"sister\") (args variable)) (binop variable \"\\==\"))", + "(clause (compound (functor \"sister\") (args variable)) (binop \"\\=\" variable))", + "(clause (compound (functor \"grandparent\") (args variable)) (binop variable \"==\"))", + "(clause (binop \"\\=\" variable) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"brother\") (args variable)) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"cousin\") (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"rel\") (args variable)))", + "(clause (binop (compound (functor \"parent\") (args (args variable))) \"\\==\") (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"uncle\") (args variable)))", + "(clause (binop \"\\==\" (compound (functor \"parent\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"rel\") (args (args variable))))", + "(clause (compound (functor \"grandparent\") (args variable)) (binop \"==\" variable))", + "(clause (binop variable \"\\==\") (compound (functor \"sister\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"sister\") (args variable)))", + "(clause (head (compound (functor \"uncle\") (args variable))) (compound (functor \"brother\") (args variable)))", + "(clause (binop \"\\=\" variable) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"mother\") (args (args variable))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 133, + 6 + ], + "quality": 0.94016212482336 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 29, + 0 + ], + "quality": 0.933779474141905 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"grandparent\") (args (args variable))))" + ], + "distribution": [ + 131, + 9 + ], + "quality": 0.9176017146530752 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"grandparent\") (args (args variable))))" + ], + "distribution": [ + 122, + 9 + ], + "quality": 0.9115239358917779 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 1, + 46 + ], + "quality": 0.9076289132901347 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 32, + 1 + ], + "quality": 0.9018227532951513 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"sister\") (args variable)))" + ], + "distribution": [ + 3, + 61 + ], + "quality": 0.8974982076912563 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\==\" variable))" + ], + "distribution": [ + 1, + 40 + ], + "quality": 0.8923400808585659 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))))" + ], + "distribution": [ + 5, + 69 + ], + "quality": 0.8778775682779553 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"sister\") (args (args variable))))" + ], + "distribution": [ + 6, + 73 + ], + "quality": 0.8765880199817603 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args (args variable))))", + "(clause (compound (functor \"brother\") (args (args variable))))" + ], + "distribution": [ + 4, + 53 + ], + "quality": 0.8692566844984977 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"brother\") (args variable)))" + ], + "distribution": [ + 5, + 59 + ], + "quality": 0.8673836719098068 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8498355518209159 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sister\") (args (args variable))) (compound (functor \"brother\") (args (args variable))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8498355518209159 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"\\==\"))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8498355518209159 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 5, + 51 + ], + "quality": 0.8470067221446368 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 3, + 41 + ], + "quality": 0.8454701631582257 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"male\") (args variable)))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8369844665046267 + }, + { + "class": false, + "condition": [ + "(clause (head (binop variable \"\\==\")))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8369844665046267 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args variable)))" + ], + "distribution": [ + 19, + 117 + ], + "quality": 0.8367214651159391 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args (args variable))))" + ], + "distribution": [ + 20, + 118 + ], + "quality": 0.8317204395318585 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8245830644763305 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8207906119330671 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args (args variable))))" + ], + "distribution": [ + 26, + 134 + ], + "quality": 0.814618215172423 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args variable)))" + ], + "distribution": [ + 27, + 136 + ], + "quality": 0.8145742550525583 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"sister\") (args variable)))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.801889173359944 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"brother\") (args variable)))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7274216707800343 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"sister\") (args variable)))", + "(clause (compound (functor \"sister\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 1, + 15 + ], + "quality": 0.7117650610669528 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\=\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))" + ], + "distribution": [ + 2, + 18 + ], + "quality": 0.7085607880281732 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\=\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))" + ], + "distribution": [ + 2, + 18 + ], + "quality": 0.7085607880281732 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"\\=\"))" + ], + "distribution": [ + 4, + 19 + ], + "quality": 0.6686625243584223 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"brother\") (args (args variable))))" + ], + "distribution": [ + 63, + 138 + ], + "quality": 0.6674026842607351 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"brother\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"sister\") (args (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 6, + 20 + ], + "quality": 0.6144839912537575 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"brother\") (args variable)))", + "(clause (compound (functor \"brother\") (args (args variable))))" + ], + "distribution": [ + 39, + 63 + ], + "quality": 0.5661405653076401 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"cousin\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"\\==\" variable))" + ], + "distribution": [ + 65, + 65 + ], + "quality": 0.4334631379481499 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/family_relations/descendant_2/bugs.json b/prolog/problems/family_relations/descendant_2/bugs.json new file mode 100644 index 0000000..0eeaccc --- /dev/null +++ b/prolog/problems/family_relations/descendant_2/bugs.json @@ -0,0 +1,251 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"descendant\") (args variable)))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"ancestor\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"descendant\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"descendant\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"descendant\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"descendant\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"descendant\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"descendant\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"descendant\") (args variable)))", + "(clause (binop variable \"==\"))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"ancestor\") (args variable)))", + "(clause (binop \"==\" variable))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"child\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"child\") (args variable)))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"ancestor\") (args (args variable))))", + "(clause (head (compound (functor \"descdendant\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"descdendant\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"descandant\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"descandant\") (args variable)))" + ], + "rules": [ + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"ancestor\") (args variable)))" + ], + "distribution": [ + 1, + 105 + ], + "quality": 0.973626841987995 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"descendant\") (args variable)))" + ], + "distribution": [ + 64, + 0 + ], + "quality": 0.9705736245082147 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"descendant\") (args (args variable))))" + ], + "distribution": [ + 63, + 0 + ], + "quality": 0.9700883375409743 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"ancestor\") (args (args variable))))" + ], + "distribution": [ + 2, + 110 + ], + "quality": 0.9654522191878034 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"descendant\") (args (args variable))))" + ], + "distribution": [ + 32, + 0 + ], + "quality": 0.9401859078473961 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args variable))))" + ], + "distribution": [ + 29, + 0 + ], + "quality": 0.933957780902709 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"descendant\") (args variable)))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9315914615339456 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9315914615339456 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"descendant\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"descendant\") (args variable)))" + ], + "distribution": [ + 3, + 71 + ], + "quality": 0.924459733681661 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.9044160072989779 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args (args variable)))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8838503753702701 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"descendant\") (args variable)))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"descendant\") (args (args variable))))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 6, + 64 + ], + "quality": 0.8711158595238758 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"descendant\") (args variable)))", + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"descendant\") (args (args variable))))" + ], + "distribution": [ + 8, + 65 + ], + "quality": 0.849709057252787 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descdendant\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.7136115876115294 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args (args variable)))) (compound (functor \"ancestor\") (args (args variable))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.7136115876115294 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"descandant\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.7136115876115294 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"descandant\") (args variable)))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6665876404448069 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"descendant\") (args variable))) (compound (functor \"descendant\") (args variable)))" + ], + "distribution": [ + 34, + 72 + ], + "quality": 0.627337822618307 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"==\"))" + ], + "distribution": [ + 4, + 0 + ], + "quality": 0.6108003755618978 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/family_relations/grandparent_2/bugs.json b/prolog/problems/family_relations/grandparent_2/bugs.json new file mode 100644 index 0000000..03ebb02 --- /dev/null +++ b/prolog/problems/family_relations/grandparent_2/bugs.json @@ -0,0 +1,134 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"grandparent\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"grandparent\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"grandparent\") (args (args variable)))) (compound (functor \"grandparent\") (args (args variable))))", + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"grandparent\") (args variable)))", + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"grandparent\") (args (args variable)))))", + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"male\") (args variable)))", + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"parent\") (args (compound (functor \"parent\") (args variable)))))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"grandparent\") (args variable)))" + ], + "rules": [ + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 0, + 39 + ], + "quality": 0.9610730922668185 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 8, + 198 + ], + "quality": 0.9536702271177137 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8356509258426985 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.8071381578664112 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7681743107725475 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args (args variable)))) (compound (functor \"grandparent\") (args (args variable))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.741594251804507 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.741594251804507 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.741594251804507 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args (args variable)))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.741594251804507 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"grandparent\") (args variable))) (compound (functor \"parent\") (args (compound (functor \"parent\") (args variable)))))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6643380722879881 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/family_relations/mother_2/bugs.json b/prolog/problems/family_relations/mother_2/bugs.json new file mode 100644 index 0000000..a65eb29 --- /dev/null +++ b/prolog/problems/family_relations/mother_2/bugs.json @@ -0,0 +1,84 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"mother\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"mother\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"mother\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"mother\") (args (args variable)))))", + "(clause (head (compound (functor \"mother\") (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"mother\") (args (args variable)))) (compound (functor \"female\") (args variable)))", + "(clause (head (binop variable \"=\")))" + ], + "rules": [ + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"mother\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 1, + 178 + ], + "quality": 0.987052705253526 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"mother\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 0, + 79 + ], + "quality": 0.9826262170902895 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"mother\") (args (args variable)))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.890899775723019 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"mother\") (args variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7987809210948922 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.720112523275646 + }, + { + "class": false, + "condition": [ + "(clause (head (binop variable \"=\")))" + ], + "distribution": [ + 4, + 0 + ], + "quality": 0.6198615754492156 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/family_relations/sister_2/bugs.json b/prolog/problems/family_relations/sister_2/bugs.json new file mode 100644 index 0000000..2fa8351 --- /dev/null +++ b/prolog/problems/family_relations/sister_2/bugs.json @@ -0,0 +1,340 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"female\") (args variable)) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\=\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"female\") (args variable)) (binop variable \"\\=\"))", + "(clause (binop \"\\==\" variable) (compound (functor \"parent\") (args (args variable))))", + "(clause (binop variable \"\\==\") (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (binop variable \"\\==\") (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"female\") (args variable)) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"parent\") (args variable)))", + "(clause (binop variable \"\\=\") (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"parent\") (args variable)))", + "(clause (binop \"\\=\" variable) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"female\") (args variable)))", + "(clause (binop variable \"\\=\") (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"not\") (args (binop \"=\" variable))))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args variable)))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"not\") (args (binop variable \"=\"))))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"female\") (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"==\"))", + "(clause (compound (functor \"female\") (args variable)) (binop \"\\=\" variable))", + "(clause (binop (compound (functor \"parent\") (args variable)) \"==\" (compound (functor \"parent\") (args variable))))", + "(clause (binop \"\\==\" variable) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"not\") (args (binop variable \"=\"))))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"not\") (args (binop \"=\" variable))))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"mother\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args variable)) (binop \"==\" variable))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop \"==\" (compound (functor \"parent\") (args (args variable)))))", + "(clause (head (compound (functor \"sister\") (args (args variable)))))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop (compound (functor \"parent\") (args (args variable))) \"==\"))", + "(clause (compound (functor \"parent\") (args variable)) (binop variable \"=\\=\"))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop \"=\\=\" variable))", + "(clause (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"mother\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"sibling\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"not\") (args (binop variable \"=\"))))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"sibling\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"=\\=\" variable))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop \"=\" (compound (functor \"parent\") (args (args variable)))))", + "(clause (compound (functor \"female\") (args variable)) (binop variable \"=\\=\"))", + "(clause (head (compound (functor \"sibling\") (args variable))) (compound (functor \"parent\") (args (args variable))))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"mother\") (args (args variable))))", + "(clause (head (compound (functor \"sibling\") (args (args variable)))) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"mother\") (args variable)) (compound (functor \"mother\") (args variable)))", + "(clause (compound (functor \"sibling\") (args variable)) (compound (functor \"female\") (args variable)))", + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"feamle\") (args variable)))", + "(clause (compound (functor \"female\") (args variable)) (binop (compound (functor \"parent\") (args (args variable))) \"==\"))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop (compound (functor \"parent\") (args (args variable))) \"=\"))", + "(clause (head (compound (functor \"sister\") (args variable))) (binop variable \"=\\=\"))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"feamle\") (args variable)))", + "(clause (binop (compound (functor \"parent\") (args variable)) \"=\" (compound (functor \"parent\") (args variable))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 131, + 0 + ], + "quality": 0.98752268394827 + }, + { + "class": false, + "condition": [ + "(clause (binop \"\\==\" variable) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 45, + 0 + ], + "quality": 0.960805156909999 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"\\==\") (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 37, + 0 + ], + "quality": 0.9514793639924134 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"sister\") (args (args variable)))) (binop \"\\=\" variable))" + ], + "distribution": [ + 1, + 72 + ], + "quality": 0.9491654216200829 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\=\"))" + ], + "distribution": [ + 3, + 81 + ], + "quality": 0.9323996349698898 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 4, + 95 + ], + "quality": 0.9294071429039249 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args (args variable))))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"female\") (args variable)) (binop variable \"\\==\"))" + ], + "distribution": [ + 4, + 89 + ], + "quality": 0.9257398293889815 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 25, + 0 + ], + "quality": 0.9244949834569286 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop \"\\==\" variable))", + "(clause (compound (functor \"parent\") (args (args variable))) (binop variable \"\\==\"))" + ], + "distribution": [ + 17, + 184 + ], + "quality": 0.9097159118083122 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sister\") (args (args variable)))) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.9090981834363482 + }, + { + "class": false, + "condition": [ + "(clause (binop \"\\=\" variable) (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.899813945496532 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"\\=\") (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8864346621831894 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)) (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8577342713242664 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"female\") (args variable))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.8143191401362178 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.8143191401362178 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args variable)))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7963231180678917 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"parent\") (args (args variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7963231180678917 + }, + { + "class": false, + "condition": [ + "(clause (binop \"\\==\" variable) (compound (functor \"female\") (args variable)))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7745383217844619 + }, + { + "class": false, + "condition": [ + "(clause (binop (compound (functor \"parent\") (args variable)) \"==\" (compound (functor \"parent\") (args variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7745383217844619 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"mother\") (args (args variable))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7500360114235385 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sister\") (args (args variable)))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7500360114235385 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"female\") (args variable)) (compound (functor \"not\") (args (binop variable \"=\"))))" + ], + "distribution": [ + 0, + 6 + ], + "quality": 0.6828971360185574 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sister\") (args variable))) (compound (functor \"female\") (args variable)))", + "(clause (compound (functor \"parent\") (args (args variable))) (compound (functor \"not\") (args (binop variable \"=\"))))" + ], + "distribution": [ + 0, + 7 + ], + "quality": 0.6384215810360028 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists/conc_3/bugs.json b/prolog/problems/lists/conc_3/bugs.json new file mode 100644 index 0000000..faa8bb9 --- /dev/null +++ b/prolog/problems/lists/conc_3/bugs.json @@ -0,0 +1,623 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"conc\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"conc\") (args (args \"[]\" (args variable))))))", + "(clause (head (compound (functor \"conc\") (args variable (args \"[]\")))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args variable (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"conc\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable))))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"conc\") (args (args variable (args (list (t variable))))))))", + "(clause (binop \"=\" variable))", + "(clause (head (compound (functor \"conc\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (head (compound (functor \"conc\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (head (compound (functor \"conc\") (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"conc\") (args variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args (args (list (t variable)))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args (list (t variable)))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args variable)))", + "(clause (binop (list (t variable)) \"=\") (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args variable (args (args (list (h variable))))))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable (args (list (t variable)))))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (list (t variable)))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args \"[]\" (args variable))))", + "(clause (head (compound (functor \"conc\") (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (compound (functor \"conc\") (args \"[]\")))", + "(clause (compound (functor \"conc\") (args \"[]\" (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t (list (t (list (t (list (h variable))))))))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop (list (h variable)) \"=\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"conc\") (args (list (t \"[]\"))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)))))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"conc\") (args (list (t \"[]\")) (args variable)))))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)) (args (list (t variable))))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (h variable))))))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t (list (h variable))))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (list (t \"[]\")) (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (h variable))))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop variable \"==\" \"[]\"))", + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"==\"))", + "(clause (binop \"==\" \"[]\"))", + "(clause (binop (list (h variable)) \"=\") (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args variable)) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable)) (args (args variable))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)) (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args variable (args (args (list (h variable)))))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (h variable))))))) (compound (functor \"conc\") (args variable)))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 200, + 0 + ], + "quality": 0.9918098978873745 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args (args variable))))))" + ], + "distribution": [ + 95, + 0 + ], + "quality": 0.9813216549666162 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 109, + 0 + ], + "quality": 0.9792693390073695 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))))" + ], + "distribution": [ + 84, + 0 + ], + "quality": 0.9784913292107171 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 128, + 1 + ], + "quality": 0.9769005851308159 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args variable))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 74, + 0 + ], + "quality": 0.9751485753644915 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))" + ], + "distribution": [ + 5, + 194 + ], + "quality": 0.96777166797591 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 57, + 0 + ], + "quality": 0.9664740583799806 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (list (h variable))))))" + ], + "distribution": [ + 52, + 0 + ], + "quality": 0.9625183513217128 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args variable)))))" + ], + "distribution": [ + 96, + 1 + ], + "quality": 0.9616690423705326 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args variable))))" + ], + "distribution": [ + 49, + 0 + ], + "quality": 0.9598416751987479 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 8, + 195 + ], + "quality": 0.9537663671373556 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 176, + 6 + ], + "quality": 0.9534661465905875 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 41, + 0 + ], + "quality": 0.9502480946983761 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))" + ], + "distribution": [ + 10, + 199 + ], + "quality": 0.9456023946121227 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 35, + 0 + ], + "quality": 0.9400876354157746 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 48, + 1 + ], + "quality": 0.9301166055329816 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 30, + 0 + ], + "quality": 0.9274776659225339 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 15, + 200 + ], + "quality": 0.9240650012127092 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 134, + 8 + ], + "quality": 0.9227536777332479 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args variable (args \"[]\")))))" + ], + "distribution": [ + 54, + 1 + ], + "quality": 0.9220529205414407 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 42, + 1 + ], + "quality": 0.918344977607912 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable (args (list (t variable))))))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9172841429595752 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 156, + 12 + ], + "quality": 0.9092617591052642 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 19, + 199 + ], + "quality": 0.9069186602870813 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9056547059316193 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 68, + 4 + ], + "quality": 0.9017940133144648 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 22, + 201 + ], + "quality": 0.8956538011695907 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 24, + 205 + ], + "quality": 0.8897060833902939 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args variable))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.8878657999705749 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8624843097901103 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args variable (args variable)))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8624843097901103 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (args (list (h variable)))))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8416383100276 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 48, + 205 + ], + "quality": 0.805969040247678 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.7979894054615561 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))" + ], + "distribution": [ + 105, + 203 + ], + "quality": 0.6457478342210308 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 132, + 210 + ], + "quality": 0.6033553813748799 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))" + ], + "distribution": [ + 176, + 219 + ], + "quality": 0.5467835845280454 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))" + ], + "distribution": [ + 213, + 227 + ], + "quality": 0.5093693606117694 + }, + { + "class": true, + "condition": [ + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 26, + 31 + ], + "quality": 0.4752464712988064 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists/del_3/bugs.json b/prolog/problems/lists/del_3/bugs.json new file mode 100644 index 0000000..34d373a --- /dev/null +++ b/prolog/problems/lists/del_3/bugs.json @@ -0,0 +1,833 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"del\") (args variable))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" variable))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args variable))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"del\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args (args \"[]\"))))))", + "(clause (binop \"=\" variable))", + "(clause (head (compound (functor \"del\") (args variable (args (args \"[]\"))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"del\") (args (args \"[]\")))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"del\") (args variable))) (binop variable \"==\"))", + "(clause (head (compound (functor \"del\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args variable)))))", + "(clause (binop variable \"=\") (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop \"==\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"==\" variable))", + "(clause (binop variable \"=\") (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"==\"))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args (list (h variable))))))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args variable (args (args (list (h variable))))))))", + "(clause (binop \"\\==\" variable) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"delete\") (args variable))) (compound (functor \"delete\") (args variable)))", + "(clause (head (compound (functor \"del\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop \"==\" variable))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"delete\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args \"[]\" (args variable))))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"del\") (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"del\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args (list (t variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (compound (functor \"del\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (binop variable \"=\")))", + "(clause (head (compound (functor \"del\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"conc\") (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (h variable))))))))", + "(clause (head (binop \"=\" (list (t variable)))))", + "(clause (head (compound (functor \"del\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args variable (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (h variable))))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop variable \"=\"))", + "(clause (binop variable \"\\=\") (compound (functor \"del\") (args variable)))", + "(clause (binop variable \"=\" (list (h variable))))", + "(clause (binop \"=\" variable) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"del\") (args (args (args (list (t variable)))))))", + "(clause (binop variable \"\\=\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args (args variable (args \"[]\"))))))", + "(clause (compound (functor \"del\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"delete\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop \"\\=\" variable))", + "(clause (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"del\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"\\==\"))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"del\") (args (args (list (t (list (h variable)))))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"delete\") (args (args (list (t variable)) (args variable))))))", + "(clause (head (compound (functor \"delete\") (args (args (args (list (t variable))))))) (compound (functor \"delete\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (h variable))))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop variable \"==\"))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (binop \"=\" (list (h variable)))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"del\") (args variable)))", + "(clause (binop variable \"\\=\"))", + "(clause (compound (functor \"del\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"delete\") (args (args (list (t variable)))))) (compound (functor \"delete\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"del\") (args (args (args (list (h variable))))))) (binop \"\\=\" variable))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"del\") (args \"[]\" (args (args variable))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"del\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop (binop \"=\" variable) \"|\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args variable))))))", + "(clause (head (compound (functor \"del\") (args \"[]\"))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=\" (list (h \"[]\"))))", + "(clause (head (compound (functor \"del\") (args variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h \"[]\"))))", + "(clause (binop \"=\" (list (h \"[]\") (t variable))))", + "(clause (binop \"=\" (list (t variable))) (binop (binop variable \"=\") \"|\"))", + "(clause (compound (functor \"del\") (args (args (args \"[]\")))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args variable)))) (binop \"=\" variable))", + "(clause (binop \"\\=\" variable) (compound (functor \"del\") (args variable)))", + "(clause (binop variable \"\\==\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args (list (h variable))))))", + "(clause (compound (functor \"del\") (args (args variable (args \"[]\")))))", + "(clause (binop (binop \"=\" variable) \"|\") (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"==\" variable) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"del\") (args variable (args (args \"[]\")))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (head (compound (functor \"del\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t (list (h variable))))))))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (h variable))))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (h variable))))))) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t (list (h variable)))) (args variable))))))", + "(clause (head (binop variable \"=\" (list (h variable)))))", + "(clause (head (compound (functor \"del\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args (list (t variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"del\") (args variable)) (binop \"=\" variable))", + "(clause (compound (functor \"del\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))))" + ], + "distribution": [ + 116, + 0 + ], + "quality": 0.9849948790812632 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 196, + 2 + ], + "quality": 0.9800002708060949 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable))))" + ], + "distribution": [ + 117, + 1 + ], + "quality": 0.9746637220573926 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (args variable))))))" + ], + "distribution": [ + 83, + 1 + ], + "quality": 0.9637161155237414 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (compound (functor \"del\") (args variable)))" + ], + "distribution": [ + 49, + 0 + ], + "quality": 0.9605929930584268 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 44, + 0 + ], + "quality": 0.9555710694733691 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 90, + 2 + ], + "quality": 0.9538781413622573 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args \"[]\")))))" + ], + "distribution": [ + 55, + 1 + ], + "quality": 0.9427801352444736 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args variable)))))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9376094405437594 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9332118303316111 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (args \"[]\"))))))" + ], + "distribution": [ + 68, + 3 + ], + "quality": 0.9223387559820253 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 45, + 2 + ], + "quality": 0.9029287003421126 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.90080527035397 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8911811592756177 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"del\") (args (args variable))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8911811592756177 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args (list (h variable))))))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8842519805264388 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8842519805264388 + }, + { + "class": false, + "condition": [ + "(clause (binop \"\\==\" variable) (compound (functor \"del\") (args variable)))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8762537481589044 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop \"==\" variable))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8664132146073047 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"delete\") (args variable (args (list (h variable)))))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8554008072866465 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 21, + 155 + ], + "quality": 0.8535437992650724 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args variable)))) (compound (functor \"del\") (args (args variable))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.845385684352757 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"delete\") (args variable))) (compound (functor \"delete\") (args variable)))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.845385684352757 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 25, + 158 + ], + "quality": 0.8389658632349006 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 25, + 156 + ], + "quality": 0.837055718203718 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.815496657694811 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.815496657694811 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (compound (functor \"del\") (args (args (args (list (h variable)))))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.815496657694811 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 32, + 161 + ], + "quality": 0.8133170492524149 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop \"\\=\" variable))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.7990326898491317 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.7990326898491317 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop variable \"\\==\"))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.7990326898491317 + }, + { + "class": false, + "condition": [ + "(clause (head (binop variable \"=\")))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.7990326898491317 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 38, + 159 + ], + "quality": 0.7825207375818234 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"del\") (args (args (args (list (t variable)))))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7778461853105435 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"\\=\") (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7778461853105435 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"\\=\") (compound (functor \"del\") (args variable)))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7778461853105435 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 47, + 165 + ], + "quality": 0.7580333749731936 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" variable))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7517017140221434 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable))) (binop \"\\=\" variable))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7517017140221434 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 2, + 25 + ], + "quality": 0.746763415540722 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args variable))) (compound (functor \"insert\") (args variable)))" + ], + "distribution": [ + 0, + 11 + ], + "quality": 0.7314481033259684 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (args (list (t variable))))))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 70, + 173 + ], + "quality": 0.699662623234134 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 7, + 31 + ], + "quality": 0.6871971251913926 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 0, + 7 + ], + "quality": 0.6814775755254696 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 9, + 32 + ], + "quality": 0.6807877449850186 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))" + ], + "distribution": [ + 3, + 16 + ], + "quality": 0.6432549088482765 + }, + { + "class": true, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop variable \"=\"))" + ], + "distribution": [ + 4, + 20 + ], + "quality": 0.6264207966829962 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))", + "(clause (head (compound (functor \"del\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 10, + 28 + ], + "quality": 0.581720792487467 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"del\") (args variable))) (binop variable \"=\"))" + ], + "distribution": [ + 10, + 25 + ], + "quality": 0.5799037859009714 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 20, + 38 + ], + "quality": 0.5647093308403234 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))" + ], + "distribution": [ + 134, + 184 + ], + "quality": 0.5608601870295024 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 62, + 81 + ], + "quality": 0.5359594019200824 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)) (args variable))))))" + ], + "distribution": [ + 174, + 200 + ], + "quality": 0.518985127711331 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))" + ], + "distribution": [ + 187, + 196 + ], + "quality": 0.4985565256833396 + }, + { + "class": true, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 6, + 15 + ], + "quality": 0.4771191019402525 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"del\") (args (args (list (t variable)))))) (compound (functor \"del\") (args (args variable))))" + ], + "distribution": [ + 257, + 212 + ], + "quality": 0.4430781515633242 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists/divide_3/bugs.json b/prolog/problems/lists/divide_3/bugs.json new file mode 100644 index 0000000..7a3d3a8 --- /dev/null +++ b/prolog/problems/lists/divide_3/bugs.json @@ -0,0 +1,597 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"divide\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"divide\") (args \"[]\"))))", + "(clause (head (compound (functor \"divide\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (binop \"=\" \"[]\"))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable)))) (args (args (list (h variable))))))))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args (list (t variable)))))) (compound (functor \"divide\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (t variable))))))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"divide\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"divide\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable) (t \"[]\"))))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args \"[]\" (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args \"[]\" (args (args variable))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args (args \"[]\"))))))", + "(clause (compound (functor \"divide\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args variable (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"divide\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"divide\") (args (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (args variable (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"divide\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"divide\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable) (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args variable)))))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable) (t \"[]\"))))))))", + "(clause (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"divide\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t \"[]\")))) (args (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (compound (functor \"divide\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t \"[]\")))) (args (args (list (h variable))))))))", + "(clause (binop variable \"=\") (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\") (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"divide\") (args (args variable))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))))", + "(clause (binop variable \"=\") (compound (functor \"divide\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"divide\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"divide\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))) (compound (functor \"divide\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args \"[]\")))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args (args variable))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))))", + "(clause (compound (functor \"divide\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable)))) (args (args variable))))))", + "(clause (binop variable \"=\" variable))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"divide\") (args (args (list (t variable))))))", + "(clause (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=\" (list (t \"[]\"))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (binop \"=\" (list (h variable) (t \"[]\"))))", + "(clause (binop \"=\" (list (t \"[]\"))))", + "(clause (head (compound (functor \"divide\") (args (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args (list (t \"[]\")))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"divide\") (args (args (args (list (t variable)))))))", + "(clause (binop variable \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"divide\") (args (args (list (t variable)))))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"divide\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))) (binop \"=\" variable))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (compound (functor \"divide\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args \"[]\" (args (list (h variable))))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"oddlen\") (args (list (h variable)))))", + "(clause (compound (functor \"oddlen\") (args (list (t variable)))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args (list (t \"[]\")) (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"evenlen\") (args (list (h variable)))))", + "(clause (compound (functor \"divide\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (h variable))))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (list (t variable))))) (compound (functor \"oddlen\") (args (list (t variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable))))))", + "(clause (head (compound (functor \"devide\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args variable (args (args \"[]\"))))))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t (list (h variable)))))) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)))))) (compound (functor \"evenlen\") (args (list (h variable)))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"divide\") (args variable (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))) (compound (functor \"divide\") (args (list (t variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (t (list (h variable))))))))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"divide\") (args (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))) (compound (functor \"divide\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"divide\") (args (args (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"divide\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"divide\") (args (args (list (t variable)))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args (list (t variable)) (args (list (t variable))))))))", + "(clause (compound (functor \"evenlen\") (args (list (t variable)))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"devide\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"devide\") (args (args variable)))) (binop variable \"=\"))", + "(clause (compound (functor \"divide\") (args (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (t variable))))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (h variable))))))) (compound (functor \"oddlen\") (args (list (h variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable))))) (compound (functor \"evenlen\") (args (list (t variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (list (t variable)))))) (compound (functor \"divide\") (args (list (t variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (args (binop \"|\" \"[]\"))))))", + "(clause (head (compound (functor \"divideL\") (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"divide\") (args variable))))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (t variable))))))) (compound (functor \"divide\") (args (list (t variable)))))", + "(clause (head (compound (functor \"divide\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"devide\") (args (list (h variable) (t (list (h \"[]\"))))))))", + "(clause (head (compound (functor \"devide\") (args (list (t (list (h \"[]\"))))))))", + "(clause (binop variable \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"concat\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (binop \"|\" \"[]\") (args (list (h variable))))))))", + "(clause (head (compound (functor \"divide\") (args (args (binop \"|\" \"[]\") (args (args (list (h variable)))))))))", + "(clause (head (compound (functor \"divide\") (args (args (binop variable \"|\") (args (args (list (h variable)))))))))", + "(clause (head (compound (functor \"divide\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"divide\") (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"concat\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (binop variable \"|\" \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args variable (args (binop \"|\" \"[]\"))))))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (head (compound (functor \"divideL\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop variable \">\"))", + "(clause (head (compound (functor \"divide2\") (args (list (t variable))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t \"[]\")))) (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args \"[]\")))))", + "(clause (head (compound (functor \"divideS\") (args (args (args variable))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"divideS\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"divide\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (h variable))))))) (compound (functor \"divide\") (args (list (h variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args (list (t variable)))))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable)) (args (args (list (h variable))))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"divide\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"divide\") (args (args (list (t (list (h variable)))))))) (compound (functor \"divide\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"divide2\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable))))) (compound (functor \"divide2\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (h variable))))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable)))) (args (list (t variable)))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t \"[]\")))) (args (args variable))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable)))) (args (args (list (t variable))))))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"divide\") (args variable))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"dividel\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"divide\") (args (list (h variable)))))", + "(clause (head (compound (functor \"divide2\") (args (args variable)))) (compound (functor \"divide\") (args (args variable))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h \"[]\"))))))))", + "(clause (head (compound (functor \"divide\") (args (list (t variable)) (args (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)))))) (compound (functor \"divide\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable) (t (list (h \"[]\"))))))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args (args variable))))))" + ], + "distribution": [ + 86, + 0 + ], + "quality": 0.9785860066956276 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args (args variable))))) (compound (functor \"divide\") (args (args (args variable)))))" + ], + "distribution": [ + 108, + 1 + ], + "quality": 0.9720150880155988 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable)))))" + ], + "distribution": [ + 61, + 0 + ], + "quality": 0.968078588978822 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"divide\") (args (args variable))))" + ], + "distribution": [ + 92, + 1 + ], + "quality": 0.9663450177851911 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 48, + 0 + ], + "quality": 0.9570652224524285 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"divide\") (args (args (args variable)))))" + ], + "distribution": [ + 47, + 0 + ], + "quality": 0.956022243308435 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 40, + 0 + ], + "quality": 0.9468348385402378 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args variable)))))" + ], + "distribution": [ + 39, + 0 + ], + "quality": 0.9451487184421172 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (t \"[]\")) (args variable)))))" + ], + "distribution": [ + 32, + 0 + ], + "quality": 0.9297026017780392 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable (args variable))))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9268053674110606 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"divide\") (args (args variable))) (binop variable \"=\"))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9268053674110606 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable)))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9164992286716568 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9140683253475687 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"divide\") (args (args (args variable)))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9140683253475687 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"divide\") (args (args variable))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9140683253475687 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable (args \"[]\"))))))" + ], + "distribution": [ + 40, + 1 + ], + "quality": 0.9101759348576428 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"divide\") (args variable)))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.8983105052699809 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"divide\") (args (args (args variable)))))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.8933309419052631 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"divide\") (args (args variable))))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.8933309419052631 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t (list (t variable))))) (binop variable \"=\"))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8868685351234835 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8868685351234835 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8868685351234835 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (t variable))))))) (compound (functor \"divide\") (args (args (args variable)))))" + ], + "distribution": [ + 10, + 114 + ], + "quality": 0.8852394420802692 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.871192237374898 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args \"[]\")))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8637639695477869 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"divide\") (args (args (list (h variable))))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8637639695477869 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8637639695477869 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (h variable))))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8531485099731269 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable)) (args (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (args (args (list (t variable))))))) (compound (functor \"divide\") (args (args (args variable)))))" + ], + "distribution": [ + 19, + 119 + ], + "quality": 0.8320520793830597 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (h variable)))) (args (args (list (h variable))))))))" + ], + "distribution": [ + 23, + 119 + ], + "quality": 0.8078706275007033 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"divide\") (args \"[]\"))))", + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"divide\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))" + ], + "distribution": [ + 4, + 28 + ], + "quality": 0.7271076007261638 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"divide\") (args (list (t (list (t variable))))))) (compound (functor \"divide\") (args variable)))", + "(clause (head (compound (functor \"divide\") (args (args (list (h variable) (t \"[]\")))))))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.39100325275123204 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists/dup_2/bugs.json b/prolog/problems/lists/dup_2/bugs.json new file mode 100644 index 0000000..c62360a --- /dev/null +++ b/prolog/problems/lists/dup_2/bugs.json @@ -0,0 +1,537 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"dup\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"dup\") (args \"[]\"))))", + "(clause (head (compound (functor \"dup\") (args (args (list (h variable) (t (list (h variable)))))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"dup\") (args (args \"[]\")))))", + "(clause (binop \"=\" (list (h variable) (t (list (h variable))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"dup\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (t variable)))))))) (compound (functor \"dup\") (args (args variable))))", + "(clause (compound (functor \"dup\") (args (args variable))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"dup\") (args variable)))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"dup\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))))", + "(clause (compound (functor \"dup\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"dup\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"dup\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"dup\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (compound (functor \"dup\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (head (compound (functor \"dup\") (args (args (list (h variable) (t variable)))))))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop variable \"=\") (compound (functor \"dup\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable)) (args (list (t (list (t variable)))))))))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (list (h variable)) (args (list (t variable)))))))", + "(clause (binop variable \"=\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"dup\") (args (list (t \"[]\")) (args (list (t (list (h variable)))))))))", + "(clause (compound (functor \"conc\") (args variable (args variable))))", + "(clause (head (compound (functor \"dup\") (args variable (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"dup\") (args (args (list (h variable))))))", + "(clause (compound (functor \"dup\") (args (args (list (h variable) (t (list (h variable))))))))", + "(clause (compound (functor \"conc\") (args (list (h variable) (t (list (h variable)))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (t (list (h variable)))))))", + "(clause (head (compound (functor \"dup\") (args variable (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"dup\") (args (args (list (t variable)))))) (compound (functor \"dup\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable) (t variable))))", + "(clause (binop \"=\" variable))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (compound (functor \"dup\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"dup\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (t variable)))))))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"dup\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable)) (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (binop \"is\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"dup\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (args (list (h variable) (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"dup\") (args (args (list (t (list (h variable))))))))", + "(clause (binop variable \"=\") (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (h variable) (t \"[]\")))))))))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (t variable)))))))) (compound (functor \"dup\") (args variable)))", + "(clause (compound (functor \"conc\") (args (list (h variable)) (args (list (h variable))))))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"dup\") (args (list (t \"[]\")) (args variable)))))", + "(clause (head (compound (functor \"dup\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"dup\") (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"dup\") (args (list (t \"[]\")) (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"dup\") (args (args (list (t variable)))))))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (head (compound (functor \"dup\") (args (args (list (t variable)))))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"dup\") (args variable))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (binop \"is\" (list (t variable))))", + "(clause (head (compound (functor \"dup\") (args (list (t \"[]\")) (args (list (t variable)))))))", + "(clause (compound (functor \"dup\") (args variable (args variable))))", + "(clause (head (compound (functor \"dup\") (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"dup\") (args variable)) (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"dup\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"concat\") (args (args (args variable)))))", + "(clause (binop \"is\" (list (h variable) (t variable))))", + "(clause (compound (functor \"dup\") (args (args variable))) (binop variable \"=\"))", + "(clause (binop variable \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (args (list (h variable)))))) (compound (functor \"dup\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"dup\") (args (args (binop \"|\" variable))))) (binop variable \"==\"))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"dup\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args (args variable))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t (list (t variable))))))", + "(clause (compound (functor \"dup\") (args (args variable))) (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"dup\") (args (args (list (t (list (t variable))))))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"dup1\") (args \"[]\"))))", + "(clause (head (compound (functor \"dup\") (args variable))) (compound (functor \"dup1\") (args variable)))", + "(clause (binop variable \"is\") (binop \"is\" (list (h variable))))", + "(clause (compound (functor \"dup\") (args (list (h variable) (t (list (h variable)))))))", + "(clause (compound (functor \"dup1\") (args variable (args \"[]\"))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dum\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"dup\") (args (list (h variable)))))", + "(clause (head (compound (functor \"dup1\") (args (list (t variable))))) (compound (functor \"dup1\") (args variable)))", + "(clause (head (compound (functor \"dup1\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (t variable)))))))) (compound (functor \"dup\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (binop \"is\" (list (t variable))))", + "(clause (compound (functor \"dup1\") (args (args \"[]\"))))", + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args (args (list (t (list (t variable))))))))", + "(clause (head (compound (functor \"dup1\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"dup\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (h variable)))))))) (compound (functor \"dup\") (args (args (list (h variable))))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (args variable)))) (compound (functor \"dup\") (args (args variable))))" + ], + "distribution": [ + 83, + 0 + ], + "quality": 0.9793745051956579 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (args variable)))))" + ], + "distribution": [ + 69, + 0 + ], + "quality": 0.9745611611669687 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (h variable))))))" + ], + "distribution": [ + 52, + 0 + ], + "quality": 0.965011287140588 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (t variable)))))))) (compound (functor \"dup\") (args (args variable))))" + ], + "distribution": [ + 2, + 104 + ], + "quality": 0.9512545556592722 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (binop \"=\" (list (t (list (t variable))))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9365430966407702 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"dup\") (args (args variable))))" + ], + "distribution": [ + 30, + 0 + ], + "quality": 0.9342281690211035 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (args (list (h variable) (t variable)))))))" + ], + "distribution": [ + 25, + 0 + ], + "quality": 0.9187546835926848 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))", + "(clause (compound (functor \"dup\") (args (args variable))) (binop \"=\" (list (t (list (t variable))))))" + ], + "distribution": [ + 2, + 53 + ], + "quality": 0.9074868141619565 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable)) (args (list (t (list (t variable)))))))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.9049826183187104 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args variable (args (list (h variable)))))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8957228443022562 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"dup\") (args variable)))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8957228443022562 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8957228443022562 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"dup\") (args (args (list (h variable))))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.880106470153706 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"dup\") (args (args variable))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.880106470153706 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8712586113449907 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8712586113449907 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (binop variable \"=\"))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8628302434186279 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8628302434186279 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args \"[]\"))))", + "(clause (compound (functor \"dup\") (args (args variable))) (binop \"=\" (list (t (list (t variable))))))" + ], + "distribution": [ + 6, + 60 + ], + "quality": 0.8581378927996048 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t (list (t variable))))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.851718483494776 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))" + ], + "distribution": [ + 16, + 116 + ], + "quality": 0.8504056912099205 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (args (list (t variable)))))) (compound (functor \"dup\") (args (args variable))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8385349971208302 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))" + ], + "distribution": [ + 20, + 117 + ], + "quality": 0.8258965557064576 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (compound (functor \"dup\") (args variable)))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8255156458958964 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (args (list (t (list (t variable)))))))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8255156458958964 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable) (t variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8080943376484535 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t \"[]\")) (args variable)))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7870660531987647 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"dup\") (args variable)))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7870660531987647 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"dup\") (args variable))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7764400337069141 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"dup\") (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 13, + 53 + ], + "quality": 0.7345604560948691 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))", + "(clause (binop \"=\" (list (h variable) (t (list (h variable))))))" + ], + "distribution": [ + 12, + 50 + ], + "quality": 0.7336334876105481 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args (list (t variable))))) (compound (functor \"dup\") (args variable)))", + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))" + ], + "distribution": [ + 65, + 175 + ], + "quality": 0.7157343899492171 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args \"[]\" (args \"[]\")))))", + "(clause (binop \"=\" (list (h variable) (t (list (h variable))))))" + ], + "distribution": [ + 25, + 74 + ], + "quality": 0.7065553916027705 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"dup\") (args \"[]\"))))", + "(clause (head (compound (functor \"dup\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 28, + 56 + ], + "quality": 0.6107009286023725 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists/insert_3/bugs.json b/prolog/problems/lists/insert_3/bugs.json new file mode 100644 index 0000000..b863ff5 --- /dev/null +++ b/prolog/problems/lists/insert_3/bugs.json @@ -0,0 +1,669 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"insert\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"insert\") (args variable (args \"[]\")))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args \"[]\" (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"insert\") (args variable))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable)))) (args (list (t (list (t (list (h variable))))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args \"[]\" (args variable))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"insert\") (args (args (args (list (h variable)))))))", + "(clause (compound (functor \"insert\") (args variable (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (t variable)))) (args (list (t (list (t (list (t variable))))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (t \"[]\")))) (args (list (h variable))))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"insert\") (args variable (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable) (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable) (t \"[]\")))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable))))))) (compound (functor \"insert\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t \"[]\")))))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"insert\") (args variable (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (t \"[]\")))) (args (list (t (list (t (list (h variable))))))))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args (list (t \"[]\")) (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (t \"[]\")))) (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable) (t (list (t (list (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t (list (t (list (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)) (args (list (t (list (t variable))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (t \"[]\")))) (args (list (t (list (t (list (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t (list (t (list (h variable) (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (t (list (t (list (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable) (t \"[]\"))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t (list (h variable) (t (list (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable)))) (args (list (t (list (t (list (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t (list (t (list (t \"[]\"))))))))))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args variable (args variable))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"insert\") (args (args \"[]\" (args (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"insertF\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"insert\") (args \"[]\"))))", + "(clause (head (compound (functor \"insertL\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"insertL\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"insert\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"insertL\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"insertL\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"insert\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"insertL\") (args (args \"[]\" (args (list (h variable))))))))", + "(clause (head (compound (functor \"insertL\") (args variable))) (compound (functor \"insertL\") (args variable)))", + "(clause (head (compound (functor \"insertL\") (args (args variable)))) (binop variable \"=\"))", + "(clause (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args variable))) (binop \"=\" variable))", + "(clause (compound (functor \"insertL\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"insert\") (args (args variable (args (list (t variable)))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"insertL\") (args (args variable))))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (t (list (t \"[]\"))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t \"[]\")) (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t (list (t \"[]\"))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable) (t (list (t \"[]\"))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t (list (t \"[]\"))))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t (list (h variable) (t \"[]\"))))))))))", + "(clause (head (compound (functor \"insertF\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable) (t \"[]\"))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable))))))) (compound (functor \"insert\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\" (list (t \"[]\"))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t \"[]\")) (args (list (t (list (t \"[]\"))))))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t \"[]\"))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t (list (t (list (h variable))))))))))))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (args (args variable)))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable)))) (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"insert\") (args (args (args (list (t variable)))))))", + "(clause (compound (functor \"insert\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"delete\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args variable))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"delete\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t (list (h variable))))))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"delete\") (args variable)))", + "(clause (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable)))))))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"=\") (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable)))))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"insertF\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args variable (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable))))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (t \"[]\")))) (args (list (t variable))))))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"insert\") (args (args (args (args variable)))))) (compound (functor \"insert\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t \"[]\")) (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (compound (functor \"insert\") (args (args \"[]\" (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"insert\") (args (args (list (h variable))))))", + "(clause (compound (functor \"insert\") (args (args \"[]\"))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"insert\") (args variable (args \"[]\"))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (compound (functor \"insertF\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args (args (list (t variable)))))))", + "(clause (compound (functor \"insert\") (args (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args variable))))))", + "(clause (compound (functor \"append\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t (list (h variable))))))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t (list (t variable))))))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"insert\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"insert\") (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"insertF\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (compound (functor \"insertF\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (compound (functor \"insertF\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"insertF\") (args (args (args variable))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args (list (h variable))))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args variable)))))" + ], + "distribution": [ + 96, + 0 + ], + "quality": 0.9809983489905899 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))))" + ], + "distribution": [ + 84, + 0 + ], + "quality": 0.9779557461869847 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args variable))))))" + ], + "distribution": [ + 64, + 0 + ], + "quality": 0.9701372216334027 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))))" + ], + "distribution": [ + 52, + 0 + ], + "quality": 0.9623158836715362 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"del\") (args (args variable))))" + ], + "distribution": [ + 1, + 78 + ], + "quality": 0.9585068382186356 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable)))))" + ], + "distribution": [ + 44, + 0 + ], + "quality": 0.9546866918174765 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args (args variable)))))" + ], + "distribution": [ + 2, + 108 + ], + "quality": 0.9489425014747489 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 2, + 79 + ], + "quality": 0.9462265906785803 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"insert\") (args (args variable))))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9373562145752073 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"insert\") (args (args (args (list (h variable)))))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9334733640178655 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable)))) (args (list (t (list (t (list (h variable))))))))))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9210026715389256 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args (list (h variable))))))) (compound (functor \"insert\") (args variable)))" + ], + "distribution": [ + 25, + 0 + ], + "quality": 0.914160398310297 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t (list (h variable))))))))))" + ], + "distribution": [ + 38, + 1 + ], + "quality": 0.9137268661238094 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"insert\") (args (args (args variable)))))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.9057307439251511 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"conc\") (args (list (h variable)))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.8952422262460376 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))) (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8883865000593553 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args (list (t \"[]\"))))))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8838682912904711 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (compound (functor \"insert\") (args variable)))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8761554549819403 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8673982968475626 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8673982968475626 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (h variable))))))))" + ], + "distribution": [ + 13, + 111 + ], + "quality": 0.8622038337735494 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args (list (t variable)))))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8444915571428488 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8444915571428488 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args (args variable)))))" + ], + "distribution": [ + 17, + 110 + ], + "quality": 0.8396242375702132 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (t variable))))))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8324450355202406 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args (args (args (list (h variable)))))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8169111707967117 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\" (list (t variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8169111707967117 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8169111707967117 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args (args variable)))))" + ], + "distribution": [ + 23, + 118 + ], + "quality": 0.8084559536708993 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable)))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7782285881315864 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t variable))))))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (binop variable \"=\"))" + ], + "distribution": [ + 2, + 23 + ], + "quality": 0.7672724265740091 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7530227654833378 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable)))) (compound (functor \"delete\") (args (args (args variable)))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7530227654833378 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args (list (t variable))))))) (compound (functor \"insert\") (args (args (args variable)))))" + ], + "distribution": [ + 34, + 114 + ], + "quality": 0.740004128093178 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t variable))))))))" + ], + "distribution": [ + 40, + 126 + ], + "quality": 0.7320278311098433 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t (list (h variable))))))))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7148255487494682 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7148255487494682 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (binop variable \"=\"))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7148255487494682 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"insert\") (args variable)) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7148255487494682 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"insert\") (args (args (list (t (list (h variable)))))))) (compound (functor \"insert\") (args (args variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7148255487494682 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args (args variable (args (list (t variable))))))))", + "(clause (head (compound (functor \"insert\") (args (args (args variable))))) (binop variable \"=\"))" + ], + "distribution": [ + 7, + 29 + ], + "quality": 0.6741379300408554 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.5886120313182593 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists/memb_2/bugs.json b/prolog/problems/lists/memb_2/bugs.json new file mode 100644 index 0000000..213f330 --- /dev/null +++ b/prolog/problems/lists/memb_2/bugs.json @@ -0,0 +1,419 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"memb\") (args variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"memb\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"memb\") (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"memb\") (args variable))) (binop variable \"==\"))", + "(clause (head (compound (functor \"memb\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"memb\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"member\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args variable))) (binop variable \"is\"))", + "(clause (head (compound (functor \"memb\") (args (args (list (t (list (h variable)))))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"member\") (args variable))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args (list (h variable))))))", + "(clause (compound (functor \"memb\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"member\") (args variable (args (list (h variable)))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"memb\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"memb\") (args variable))) (binop \"=\" variable))", + "(clause (binop (list (t variable)) \"=\"))", + "(clause (head (compound (functor \"member\") (args (args (list (t variable)))))) (compound (functor \"member\") (args (args variable))))", + "(clause (head (compound (functor \"member\") (args (args (list (t variable)))))))", + "(clause (binop (list (t variable)) \"=\") (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args variable (args (list (h variable))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))) (binop \"==\" variable))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"member\") (args (args variable))))", + "(clause (binop (list (h variable)) \"=\"))", + "(clause (head (compound (functor \"memb\") (args variable))) (binop \"==\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"==\" variable))", + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args (args (list (h variable))))))", + "(clause (compound (functor \"memb\") (args (args variable))))", + "(clause (binop variable \"\\==\" \"[]\"))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (binop \"\\==\" \"[]\"))", + "(clause (binop variable \"=\") (compound (functor \"memb\") (args variable)))", + "(clause (binop (list (h variable)) \"=\") (binop \"is\" variable))", + "(clause (binop variable \"\\==\") (compound (functor \"memb\") (args (args variable))))", + "(clause (binop variable \"is\") (compound (functor \"memb\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"memb\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "rules": [ + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 5, + 204 + ], + "quality": 0.9643056285818753 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))))" + ], + "distribution": [ + 57, + 1 + ], + "quality": 0.9460329767668465 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 14, + 211 + ], + "quality": 0.9263098442287214 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args variable)))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.9128941758478384 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 20, + 217 + ], + "quality": 0.9042815604997515 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (binop variable \"==\"))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.899542908369537 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args variable)))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8941585189962913 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 24, + 209 + ], + "quality": 0.8848214260437154 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (t (list (h variable)))))))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8737724594285132 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 34, + 225 + ], + "quality": 0.8585277155014358 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 31, + 205 + ], + "quality": 0.8557817146312238 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"member\") (args (args (list (h variable)))))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8456914738034811 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args variable)))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8456914738034811 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args (list (h variable))))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8334613960489493 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args (args (list (t variable))))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8334613960489493 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (t (list (h variable)))))))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8334613960489493 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"member\") (args variable (args (list (h variable)))))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8334613960489493 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"member\") (args variable))) (compound (functor \"member\") (args variable)))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8334613960489493 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (compound (functor \"memb\") (args variable)))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.8153596937336334 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"memb\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 47, + 220 + ], + "quality": 0.8119686948654249 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (binop variable \"is\"))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7783041821302139 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (binop variable \"=\"))" + ], + "distribution": [ + 0, + 11 + ], + "quality": 0.7725109062352901 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))" + ], + "distribution": [ + 6, + 31 + ], + "quality": 0.7322928410118167 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (binop \"==\" variable))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7146224416391088 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args (args (list (h variable))))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7146224416391088 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 20, + 60 + ], + "quality": 0.6840202801136779 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6752881577616756 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (binop variable \"=\"))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6752881577616756 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"memb\") (args variable)))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6752881577616756 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))" + ], + "distribution": [ + 144, + 298 + ], + "quality": 0.6700881903331514 + }, + { + "class": true, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))" + ], + "distribution": [ + 13, + 32 + ], + "quality": 0.6122982869191883 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists/permute_2/bugs.json b/prolog/problems/lists/permute_2/bugs.json new file mode 100644 index 0000000..9c2778c --- /dev/null +++ b/prolog/problems/lists/permute_2/bugs.json @@ -0,0 +1,452 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"permute\") (args \"[]\"))))", + "(clause (head (compound (functor \"permute\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"permute\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"permute\") (args variable)))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"permute\") (args variable (args variable)))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"permute\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"permute\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))))", + "(clause (compound (functor \"permute\") (args (args variable))))", + "(clause (compound (functor \"permute\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"permute\") (args (args variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args variable))))", + "(clause (compound (functor \"insert\") (args (args variable))) (compound (functor \"permute\") (args (args variable))))", + "(clause (compound (functor \"del\") (args variable)) (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"permute\") (args variable)) (compound (functor \"insert\") (args (args variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (compound (functor \"insert\") (args (args variable))) (compound (functor \"permute\") (args variable)))", + "(clause (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable)) (args variable)))))", + "(clause (head (compound (functor \"permute\") (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (t \"[]\")) (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (h variable)))) (args (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args \"[]\" (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"permute\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"permute\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"insert\") (args (args variable))))", + "(clause (binop variable \"=\"))", + "(clause (compound (functor \"delete\") (args (args (args variable)))) (compound (functor \"permute\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args variable))) (compound (functor \"delete\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"delete\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (list (h variable) (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (h variable) (t \"[]\"))))))))", + "(clause (compound (functor \"del\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (t \"[]\")))) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (t \"[]\")))) (args (list (h variable)))))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"permute\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args variable))) (compound (functor \"permute\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"insert\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop variable \"=\") (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"permute\") (args (list (h variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (h variable))))))) (compound (functor \"insert\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (head (compound (functor \"permute\") (args (list (h variable)) (args (compound (functor \"insert\") (args variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"permute\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (h variable))))))) (compound (functor \"insert\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (t variable))))))) (compound (functor \"insert\") (args (args (list (t variable))))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"memb\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"insert\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"permute\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"del\") (args (args (list (t variable))))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"del\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (binop (list (t variable)) \"=\") (compound (functor \"permute\") (args variable)))", + "(clause (binop (list (h variable)) \"=\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))) (compound (functor \"permute\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"ins\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (list (h variable)) (args (list (t variable)))))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))) (compound (functor \"insert\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"ins\") (args (args (args variable)))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"del\") (args (args variable))) (compound (functor \"permute\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"permute\") (args (list (h variable)))))", + "(clause (compound (functor \"insert\") (args (args (list (t variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"permute\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"insert1\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (binop \"\\=\" variable) (compound (functor \"seperateFirst2\") (args variable)))", + "(clause (head (compound (functor \"insert\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"insert\") (args (args (list (t variable))))))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"permute\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable)) (args (list (t variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"permute\") (args (args (list (h variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"permute\") (args (list (t (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t (list (h variable)))))))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable)) (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (h variable))))))) (compound (functor \"permute\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable) (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"permute\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"permute2\") (args \"[]\"))))", + "(clause (head (compound (functor \"permute\") (args variable))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"insert\") (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"insert\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (h variable))))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"permute\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"permute\") (args (list (h variable)))))", + "(clause (head (binop variable \"=\")))", + "(clause (head (compound (functor \"permute2\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (t \"[]\")))) (args (list (t (list (t \"[]\")))))))))", + "(clause (compound (functor \"insert\") (args variable (args (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"permute\") (args (list (h variable))))) (compound (functor \"permute\") (args (list (t variable)))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable)) (args variable)))))", + "(clause (head (compound (functor \"permute2\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (h variable)))) (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t (list (h variable) (t \"[]\")))))))))", + "(clause (head (compound (functor \"permute\") (args (list (t (list (t variable))))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"permute\") (args (args (compound (functor \"insert\") (args (args (args variable)))))))))", + "(clause (compound (functor \"insert\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"permute\") (args (list (t variable)))))", + "(clause (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"memb\") (args (args variable))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (args variable)))))" + ], + "distribution": [ + 95, + 0 + ], + "quality": 0.9817038429772349 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"insert\") (args (args variable))))" + ], + "distribution": [ + 190, + 2 + ], + "quality": 0.9794084745917714 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"permute\") (args (args variable))))" + ], + "distribution": [ + 104, + 1 + ], + "quality": 0.9714418818841668 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"insert\") (args (args (args variable)))))" + ], + "distribution": [ + 48, + 0 + ], + "quality": 0.9588757057531605 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (list (h variable))))))" + ], + "distribution": [ + 47, + 0 + ], + "quality": 0.9578821829207189 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (list (t variable))))))" + ], + "distribution": [ + 39, + 0 + ], + "quality": 0.947298305452628 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"permute\") (args (args variable))))" + ], + "distribution": [ + 38, + 0 + ], + "quality": 0.9455670056323863 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"insert\") (args (args variable))))" + ], + "distribution": [ + 37, + 0 + ], + "quality": 0.9437215576522013 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"permute\") (args (args variable))))" + ], + "distribution": [ + 35, + 0 + ], + "quality": 0.9396299620514391 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args variable))))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9350104617264203 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"insert\") (args (args variable))) (compound (functor \"permute\") (args (args variable))))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9350104617264203 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"permute\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"insert\") (args (args variable))))" + ], + "distribution": [ + 8, + 133 + ], + "quality": 0.9332657919230357 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (list (h variable)) (args variable)))))" + ], + "distribution": [ + 29, + 0 + ], + "quality": 0.9232913557196254 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"insert\") (args variable)))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9213023067023905 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"permute\") (args \"[]\"))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"permute\") (args variable)))" + ], + "distribution": [ + 7, + 123 + ], + "quality": 0.9187239800583585 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (list (t \"[]\")) (args variable)))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9173202964615395 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args variable)))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.911839211889241 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"permute\") (args \"[]\"))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"insert\") (args (args variable))))" + ], + "distribution": [ + 12, + 139 + ], + "quality": 0.9114837140195694 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"permute\") (args variable)))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9035625911236866 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"delete\") (args (args (args variable)))) (compound (functor \"permute\") (args variable)))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8914631047764715 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"permute\") (args \"[]\"))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"permute\") (args variable)))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"del\") (args variable)))" + ], + "distribution": [ + 2, + 27 + ], + "quality": 0.7900995111489282 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"permute\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (args (list (t variable)))))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"permute\") (args (args (list (h variable)))))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"permute\") (args variable)))" + ], + "distribution": [ + 3, + 31 + ], + "quality": 0.7888513731459508 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"permute\") (args \"[]\"))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"insert\") (args variable)))" + ], + "distribution": [ + 8, + 17 + ], + "quality": 0.4809085141607073 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"permute\") (args (list (t variable))))) (compound (functor \"permute\") (args variable)))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"del\") (args (args (args variable)))))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.4468970492731071 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/len_2/bugs.json b/prolog/problems/lists_advanced/len_2/bugs.json new file mode 100644 index 0000000..3a537ff --- /dev/null +++ b/prolog/problems/lists_advanced/len_2/bugs.json @@ -0,0 +1,371 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"len\") (args (list (h variable))))))", + "(clause (head (compound (functor \"len\") (args \"[]\"))))", + "(clause (head (compound (functor \"len\") (args (list (t variable))))) (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (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 \"len\") (args (args \"0\")))))", + "(clause (head (compound (functor \"len\") (args \"[]\" (args \"0\")))))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"len\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"len\") (args variable))) (binop variable \"=\"))", + "(clause (binop variable \"is\") (compound (functor \"len\") (args (args variable))))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"len\") (args (args variable)))))", + "(clause (head (compound (functor \"len\") (args (args \"1\")))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"len\") (args (list (h variable)) (args \"1\")))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (compound (functor \"len\") (args (args variable))))", + "(clause (binop \"is\" (binop \"1\" \"+\")))", + "(clause (binop variable \"is\" (binop \"1\" \"+\")))", + "(clause (binop \"is\" \"0\"))", + "(clause (binop variable \"is\" \"0\"))", + "(clause (binop \"=\" \"0\"))", + "(clause (binop variable \"=\" \"0\"))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))", + "(clause (binop \"is\" (binop \"1\" \"+\" variable)))", + "(clause (binop \"is\" (binop variable \"+\")) (compound (functor \"len\") (args (args variable))))", + "(clause (compound (functor \"len\") (args (args variable))))", + "(clause (binop variable \"is\" (binop variable \"+\")))", + "(clause (binop variable \"is\"))", + "(clause (binop \"=\" \"[]\"))", + "(clause (head (compound (functor \"len\") (args (args (binop \"+\" \"1\"))))))", + "(clause (head (compound (functor \"len\") (args (list (h variable)) (args (binop \"+\" \"1\"))))))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"len\") (args (list (t variable)) (args (binop \"+\" \"1\"))))))", + "(clause (binop \"=\" (binop variable \"+\" \"1\")))", + "(clause (binop variable \"=\" (binop \"+\" \"1\")))", + "(clause (binop \"=\" (binop \"+\" \"1\")))", + "(clause (compound (functor \"len\") (args (args variable))) (binop variable \"is\"))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"len\") (args (args (binop variable \"+\" \"1\"))))))", + "(clause (binop variable \"is\" \"1\"))", + "(clause (head (compound (functor \"len\") (args (args (binop variable \"+\"))))) (compound (functor \"len\") (args (args variable))))", + "(clause (binop \"is\" \"1\"))", + "(clause (head (compound (functor \"len\") (args (list (h variable) (t \"[]\"))))))", + "(clause (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"len\") (args variable))) (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (args (list (t \"[]\"))))))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"=\" (binop variable \"+\")))", + "(clause (head (compound (functor \"len\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"len\") (args \"[]\" (args (args variable))))))", + "(clause (compound (functor \"len\") (args (args (args (binop variable \"+\" \"1\"))))))", + "(clause (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (args variable))))", + "(clause (compound (functor \"len\") (args (args variable (args (binop \"+\" \"1\"))))))", + "(clause (compound (functor \"len\") (args (args (args (binop \"+\" \"1\"))))))", + "(clause (compound (functor \"len\") (args variable (args (args (binop \"+\" \"1\"))))))", + "(clause (head (compound (functor \"len\") (args (args (args variable))))) (compound (functor \"len\") (args (args (args (binop variable \"+\"))))))", + "(clause (head (compound (functor \"len\") (args \"[]\" (args \"1\")))))", + "(clause (head (binop variable \"is\")))", + "(clause (binop \"is\" (binop variable \"-\" \"1\")))", + "(clause (binop \"is\" (binop \"-\" \"1\")))", + "(clause (binop variable \"is\" (binop \"-\" \"1\")))", + "(clause (head (compound (functor \"len\") (args (list (t \"[]\")) (args variable)))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 68, + 0 + ], + "quality": 0.9727078428864591 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"is\") (compound (functor \"len\") (args (args variable))))" + ], + "distribution": [ + 49, + 0 + ], + "quality": 0.9614398238300143 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"len\") (args (args variable)))))" + ], + "distribution": [ + 44, + 0 + ], + "quality": 0.956836113223887 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args (list (t variable))))) (compound (functor \"len\") (args variable)))", + "(clause (binop \"is\" (binop \"+\" \"1\")))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"len\") (args (args \"0\")))))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 6, + 167 + ], + "quality": 0.9503656316623829 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args \"[]\"))))", + "(clause (head (compound (functor \"len\") (args (list (t variable))))) (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 10, + 179 + ], + "quality": 0.9339224337811853 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args (args \"0\")))))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 10, + 172 + ], + "quality": 0.9319373101392443 + }, + { + "class": false, + "condition": [ + "(clause (binop \"is\" (binop variable \"+\")) (compound (functor \"len\") (args (args variable))))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9209156299301058 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args \"[]\"))))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 15, + 186 + ], + "quality": 0.9137691073602562 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"len\") (args (args variable))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.9134783484069616 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args (list (t variable))))) (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 20, + 181 + ], + "quality": 0.8882648872521293 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"len\") (args (args (binop \"+\" \"1\"))))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.880196072529589 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (binop variable \"+\" \"1\")))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8723981081411187 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))", + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 27, + 192 + ], + "quality": 0.866747278996158 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"len\") (args (args variable))) (binop variable \"is\"))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8635813115896738 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"len\") (args (args variable))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 35, + 193 + ], + "quality": 0.8378438890688092 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args (list (t variable))))) (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"len\") (args (args \"0\")))))" + ], + "distribution": [ + 34, + 182 + ], + "quality": 0.8304984753873256 + }, + { + "class": false, + "condition": [ + "(clause (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.8090841003084915 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"len\") (args (args \"0\")))))" + ], + "distribution": [ + 42, + 190 + ], + "quality": 0.8090037407616595 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"is\"))", + "(clause (head (compound (functor \"len\") (args \"[]\"))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8044129053953029 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args \"[]\"))))", + "(clause (head (compound (functor \"len\") (args (list (t variable))))) (compound (functor \"len\") (args variable)))", + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 56, + 197 + ], + "quality": 0.7688780423248074 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"len\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"len\") (args (args \"0\")))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7315031617727911 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"len\") (args \"[]\"))))", + "(clause (head (compound (functor \"len\") (args (list (t variable))))) (compound (functor \"len\") (args variable)))", + "(clause (binop variable \"is\" (binop \"+\" \"1\")))" + ], + "distribution": [ + 73, + 180 + ], + "quality": 0.6988970183782519 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"len\") (args variable)))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6895831407852365 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"len\") (args variable))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6895831407852365 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"len\") (args \"[]\" (args \"1\")))))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6429023884024729 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/max_2/bugs.json b/prolog/problems/lists_advanced/max_2/bugs.json new file mode 100644 index 0000000..2fadeb9 --- /dev/null +++ b/prolog/problems/lists_advanced/max_2/bugs.json @@ -0,0 +1,467 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (compound (functor \"max\") (args variable)))", + "(clause (head (compound (functor \"max\") (args (list (h variable)) (args variable)))))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop \">\" variable))", + "(clause (binop variable \"=\"))", + "(clause (binop variable \"is\"))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (compound (functor \"max\") (args (args variable))))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (binop variable \">\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop variable \">\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop \"is\" variable))", + "(clause (binop \">=\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \"is\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=\" variable))", + "(clause (binop \"=\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \">\" variable))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop variable \">=\"))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \">=\" variable))", + "(clause (head (compound (functor \"max\") (args variable))) (binop variable \"=\"))", + "(clause (binop variable \"<\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop \">\" variable))", + "(clause (binop variable \">\") (binop \"=\" variable))", + "(clause (binop variable \">=\"))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=<\" variable))", + "(clause (binop variable \">\") (binop \"is\" variable))", + "(clause (compound (functor \"max\") (args (args variable))))", + "(clause (binop variable \">=\") (binop \"=\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \">\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop \">=\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \"<\"))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"<\" variable))", + "(clause (binop variable \">=\") (binop \"is\" variable))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop variable \"<\"))", + "(clause (binop \"<\" variable) (binop \"is\" variable))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop \"<\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \">=\"))", + "(clause (binop \"=<\" variable) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"is\" variable))", + "(clause (head (compound (functor \"max\") (args (list (t (list (t variable))))))) (compound (functor \"max\") (args (list (t variable)))))", + "(clause (binop \"=<\" variable) (binop \"is\" variable))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"max\") (args variable)))", + "(clause (binop \"<\" variable))", + "(clause (head (compound (functor \"max\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"max\") (args (list (t \"[]\")) (args variable)))))", + "(clause (head (compound (functor \"max\") (args (list (t \"[]\"))))))", + "(clause (binop \"<\" variable) (binop \"=\" variable))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \">\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \"<\" variable))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \">=\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))) (compound (functor \"max\") (args (list (h variable)))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"max\") (args \"[]\"))))", + "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (compound (functor \"max\") (args (list (h variable)))))", + "(clause (head (compound (functor \"max\") (args (args variable)))))", + "(clause (binop variable \">\") (compound (functor \"max\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \">\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \"is\"))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (binop variable \"=<\"))", + "(clause (compound (functor \"max\") (args variable)))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \">=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"<\"))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))", + "(clause (binop \"=<\" variable))", + "(clause (compound (functor \"max\") (args (list (h variable)))))", + "(clause (compound (functor \"max\") (args (list (t variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">=\"))", + "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">\"))", + "(clause (head (compound (functor \"max\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (binop variable \">=\") (compound (functor \"max\") (args (list (h variable)))))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (compound (functor \"max\") (args (args variable))))", + "(clause (binop variable \">\") (compound (functor \"max\") (args (args variable))))", + "(clause (binop \">\" variable) (binop variable \"is\"))", + "(clause (binop \"\\==\" \"[]\"))", + "(clause (binop \"=<\" variable) (compound (functor \"max\") (args (list (h variable)))))", + "(clause (head (compound (functor \"max\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"max\") (args (list (t variable))))))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (compound (functor \"max\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \">=\" variable))", + "(clause (head (compound (functor \"max\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \"=\"))", + "(clause (binop \">=\" variable) (binop variable \"is\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (compound (functor \"max\") (args variable)))", + "(clause (head (compound (functor \"max2\") (args (args (args variable))))) (binop variable \">=\"))", + "(clause (compound (functor \"max\") (args variable)) (binop \"=\" variable))", + "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))) (binop variable \">=\"))", + "(clause (binop \">\" variable) (binop \"is\" variable))", + "(clause (head (compound (functor \"max\") (args (args \"0\")))))", + "(clause (head (compound (functor \"max\") (args (list (t (list (t variable))))))) (compound (functor \"min\") (args (list (t variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))) (binop variable \">\"))", + "(clause (binop \">=\" variable) (binop \"is\" variable))", + "(clause (binop variable \"\\==\" \"[]\"))", + "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (compound (functor \"max2\") (args (args (args variable)))))", + "(clause (head (compound (functor \"max\") (args (args (args variable))))) (compound (functor \"max\") (args (args (args variable)))))", + "(clause (head (compound (functor \"max\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"max\") (args (list (t (list (h variable))))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"max\") (args \"[]\" (args \"0\")))))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (compound (functor \"min\") (args (list (h variable)))))", + "(clause (head (compound (functor \"max\") (args variable))))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"max2\") (args variable))) (binop variable \">=\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (binop \">=\" variable) (binop variable \"=\"))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"max\") (args (args variable)))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8900656084454792 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (h variable)) (args variable)))))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \">\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=<\" variable))" + ], + "distribution": [ + 2, + 48 + ], + "quality": 0.8841350678520971 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \">\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=<\" variable))" + ], + "distribution": [ + 3, + 50 + ], + "quality": 0.875784451606412 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=<\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \">\" variable))" + ], + "distribution": [ + 4, + 52 + ], + "quality": 0.8705795807504655 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \"is\"))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8585357519581691 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (compound (functor \"min\") (args variable)))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8585357519581691 + }, + { + "class": true, + "condition": [ + "(clause (binop \"is\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=<\" variable))", + "(clause (binop \"=<\" variable) (binop \"is\" variable))" + ], + "distribution": [ + 1, + 26 + ], + "quality": 0.8274606789340101 + }, + { + "class": true, + "condition": [ + "(clause (binop variable \">\"))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (binop \">\" variable))" + ], + "distribution": [ + 6, + 51 + ], + "quality": 0.8227208017431313 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \">=\"))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \"<\"))" + ], + "distribution": [ + 2, + 28 + ], + "quality": 0.8201708647010837 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=<\" variable))" + ], + "distribution": [ + 10, + 61 + ], + "quality": 0.8188104054390486 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \"is\" variable))", + "(clause (binop \"=<\" variable) (binop \"is\" variable))" + ], + "distribution": [ + 2, + 30 + ], + "quality": 0.8157774041483552 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \">=\" variable))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"<\" variable))" + ], + "distribution": [ + 2, + 27 + ], + "quality": 0.7912746669823468 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \"=<\" variable) (binop \"is\" variable))", + "(clause (binop variable \">\") (binop \"is\" variable))" + ], + "distribution": [ + 3, + 31 + ], + "quality": 0.788453996743897 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (compound (functor \"max\") (args variable)))", + "(clause (binop \"=<\" variable) (binop \"=\" variable))", + "(clause (head (compound (functor \"max\") (args (list (h variable))))) (binop \"=\" variable))" + ], + "distribution": [ + 4, + 34 + ], + "quality": 0.780182415861194 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \"=<\" variable) (binop \"is\" variable))" + ], + "distribution": [ + 5, + 35 + ], + "quality": 0.7789205356676925 + }, + { + "class": true, + "condition": [ + "(clause (binop variable \">=\") (binop \"is\" variable))", + "(clause (binop \"<\" variable) (binop \"is\" variable))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 3, + 29 + ], + "quality": 0.7718149911228794 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"max\") (args (list (h variable) (t \"[]\"))))))" + ], + "distribution": [ + 0, + 13 + ], + "quality": 0.764687469566378 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \"is\" variable))", + "(clause (binop variable \">=\") (binop \"is\" variable))" + ], + "distribution": [ + 4, + 32 + ], + "quality": 0.7646593128299235 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop variable \">=\") (binop \"is\" variable))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 6, + 38 + ], + "quality": 0.7569319577338168 + }, + { + "class": true, + "condition": [ + "(clause (binop variable \">=\") (compound (functor \"max\") (args (list (h variable)))))" + ], + "distribution": [ + 0, + 9 + ], + "quality": 0.7506097250336605 + }, + { + "class": false, + "condition": [ + "(clause (binop \">\" variable) (binop variable \"is\"))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.734002499222176 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"max\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.734002499222176 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \">=\"))", + "(clause (head (compound (functor \"max\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 3, + 22 + ], + "quality": 0.7185373527540856 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"=\" variable))", + "(clause (binop variable \">=\"))" + ], + "distribution": [ + 1, + 17 + ], + "quality": 0.7069536551156186 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (compound (functor \"max\") (args variable)))", + "(clause (compound (functor \"max\") (args (args variable))) (binop variable \"=<\"))" + ], + "distribution": [ + 2, + 16 + ], + "quality": 0.6580039730544098 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"max\") (args (list (t variable))))) (binop \"=\" variable))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6541003807133517 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \">\") (compound (functor \"max\") (args (args variable))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6541003807133517 + }, + { + "class": false, + "condition": [ + "(clause (binop \">=\" variable) (binop variable \"is\"))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6541003807133517 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/min_2/bugs.json b/prolog/problems/lists_advanced/min_2/bugs.json new file mode 100644 index 0000000..e7c88e7 --- /dev/null +++ b/prolog/problems/lists_advanced/min_2/bugs.json @@ -0,0 +1,704 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"min\") (args (list (t variable))))) (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (binop \"<\" variable))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \"<\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (binop variable \"=\"))", + "(clause (binop variable \"is\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"is\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" variable))", + "(clause (compound (functor \"min\") (args (args variable))))", + "(clause (binop \"=\" variable))", + "(clause (binop variable \"<\") (binop \"=\" variable))", + "(clause (binop \"is\" variable))", + "(clause (binop variable \"<\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop variable \"<\") (binop \"is\" variable))", + "(clause (head (compound (functor \"min\") (args \"[]\"))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \">=\"))", + "(clause (binop \"=<\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \">\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \">=\" variable))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"<\" variable))", + "(clause (head (compound (functor \"min\") (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"min\") (args (list (t \"[]\")) (args variable)))))", + "(clause (head (compound (functor \"min\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"min\") (args (list (h variable) (t \"[]\"))))))", + "(clause (binop variable \"==\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \">\" variable))", + "(clause (head (compound (functor \"min\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"min\") (args (args variable)))))", + "(clause (binop variable \">\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"=<\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"<\"))", + "(clause (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))))", + "(clause (binop \">\" variable) (binop \"=\" variable))", + "(clause (binop variable \"=<\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"min\") (args variable)))", + "(clause (binop \">=\" variable) (binop \"=\" variable))", + "(clause (binop variable \"=<\") (binop \"=\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"<\" variable))", + "(clause (binop \">=\" variable) (binop \"is\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \">\" variable))", + "(clause (head (compound (functor \"min\") (args (list (t (list (t variable))))))) (compound (functor \"min\") (args (list (t variable)))))", + "(clause (head (compound (functor \"min\") (args \"[]\" (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"==\"))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \">=\" variable))", + "(clause (binop \"==\" \"[]\"))", + "(clause (binop \">\" variable))", + "(clause (binop variable \"==\" \"[]\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \">\" variable))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (binop variable \"<\") (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (compound (functor \"min\") (args (list (h variable)))))", + "(clause (binop variable \"=<\") (binop \"is\" variable))", + "(clause (binop \">\" variable) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \"<\"))", + "(clause (binop \"<\" variable) (binop variable \"=\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \">=\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \">\"))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"<\" variable) (compound (functor \"min\") (args (args variable))))", + "(clause (binop \">\" variable) (binop \"is\" variable))", + "(clause (binop variable \">=\"))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \">=\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"is\"))", + "(clause (binop \">=\" variable) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (t (list (h variable))))))) (compound (functor \"min\") (args (list (h variable)))))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \">\"))", + "(clause (head (compound (functor \"min\") (args (list (t variable))))))", + "(clause (binop variable \"=<\") (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (binop variable \"<\") (compound (functor \"min\") (args (list (h variable)))))", + "(clause (binop \">=\" variable))", + "(clause (binop \"<\" variable) (binop \"=\" variable))", + "(clause (binop variable \"=<\") (compound (functor \"min\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"<\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"is\" variable))", + "(clause (binop \"<\" variable) (binop variable \"is\"))", + "(clause (head (binop \"is\" variable)))", + "(clause (head (compound (functor \"min\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"min\") (args (list (t variable)))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \"=\"))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (binop variable \">\") (binop variable \"=\"))", + "(clause (head (compound (functor \"min\") (args (list (t (list (h variable))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"min\") (args (list (t (list (h variable))))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"min\") (args \"[]\" (args \"0\")))))", + "(clause (binop variable \"<\") (binop variable \"=\"))", + "(clause (head (compound (functor \"min\") (args (args \"0\")))))", + "(clause (head (compound (functor \"min\") (args (args (args variable))))) (compound (functor \"min\") (args (args (args variable)))))", + "(clause (binop variable \"is\") (compound (functor \"min\") (args (args variable))))", + "(clause (binop variable \"=\") (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (compound (functor \"min\") (args (args (args variable)))))", + "(clause (head (binop variable \"is\")))", + "(clause (binop \"=\" (list (h variable))) (binop \"<\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \">\" variable))", + "(clause (binop variable \"is\" variable))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"is\" variable))", + "(clause (binop \"=<\" variable) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"min\") (args (list (t (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"var\") (args variable)))", + "(clause (head (compound (functor \"min\") (args (list (t (list (h variable))))))) (binop variable \"=<\"))", + "(clause (binop \"=<\" variable) (binop \"=\" variable))", + "(clause (compound (functor \"min\") (args (list (h variable)))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"is\" (compound (functor \"min\") (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (t variable))))) (compound (functor \"min\") (args (list (t variable)))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \"is\"))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \"==\"))", + "(clause (binop variable \">\") (binop \"=\" variable))", + "(clause (binop \"<\" variable) (binop \"is\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"==\" variable))", + "(clause (head (compound (functor \"min\") (args (args (args variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">\"))", + "(clause (compound (functor \"min\") (args (list (h variable)) (args (args variable)))))", + "(clause (binop variable \">=\") (binop \"=\" variable))", + "(clause (head (binop variable \"=\" variable)))", + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"minimum\") (args (args (args variable))))) (binop \">\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">=\"))", + "(clause (binop \">\" variable) (compound (functor \"min\") (args (list (h variable)))))", + "(clause (head (compound (functor \"min\") (args \"[]\" (args (args variable))))))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (head (compound (functor \"min\") (args (args (args variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"var\") (args variable)) (binop variable \"is\"))", + "(clause (binop \"=\" variable) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \">=\"))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"min\") (args (list (t variable))))) (compound (functor \"min\") (args (args variable))))", + "(clause (binop \"=<\" variable) (binop variable \"=\"))", + "(clause (head (compound (functor \"min\") (args (list (t (list (h variable)))) (args variable)))))", + "(clause (head (compound (functor \"min\") (args (args (args variable))))) (binop \"<\" variable))", + "(clause (binop variable \"=\") (binop \"<\" variable))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"is\" (compound (functor \"min\") (args (args variable)))))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"min\") (args (args (args variable)))))", + "(clause (compound (functor \"del\") (args (args (args variable)))))", + "(clause (binop variable \"<\") (binop variable \"is\"))", + "(clause (compound (functor \"min\") (args (args variable))) (compound (functor \"min\") (args (list (t (list (h variable)))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=<\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"is\" (compound (functor \"min\") (args (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"@>=\"))", + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"minimum\") (args (args (args variable)))))", + "(clause (head (compound (functor \"min\") (args (list (t (list (h variable))))))) (binop variable \"<\"))", + "(clause (binop variable \"is\") (binop variable \"is\"))", + "(clause (head (compound (functor \"minimum\") (args (args variable (args variable))))))", + "(clause (binop variable \"=\" variable))", + "(clause (binop \"=<\" variable) (binop variable \"is\"))", + "(clause (compound (functor \"min\") (args (args variable))) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"@>=\" variable))", + "(clause (head (compound (functor \"min\") (args variable (args (args variable))))))", + "(clause (compound (functor \"del\") (args variable)) (binop variable \"=\"))", + "(clause (head (binop \"<\" variable)))", + "(clause (binop variable \">\") (binop \"is\" variable))", + "(clause (binop variable \"=\") (binop variable \"=<\"))", + "(clause (head (binop \"=\" variable)))", + "(clause (compound (functor \"min\") (args variable)) (compound (functor \"min\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"min\") (args variable)))", + "(clause (binop variable \"=<\") (binop variable \"=\"))", + "(clause (head (compound (functor \"min\") (args (args \"[]\" (args variable))))))", + "(clause (binop \"is\" variable) (binop variable \"=<\"))", + "(clause (head (compound (functor \"min\") (args variable (args variable)))))", + "(clause (compound (functor \"del\") (args variable)) (binop variable \"=<\"))", + "(clause (head (compound (functor \"min\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"minimum\") (args (args variable)))) (binop \">\" variable))", + "(clause (head (compound (functor \"minimum\") (args variable))) (binop variable \">\"))", + "(clause (compound (functor \"min\") (args (args (args variable)))) (binop \"<\" variable))", + "(clause (head (compound (functor \"minimum\") (args variable (args (args variable))))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"<\" variable))" + ], + "distribution": [ + 133, + 0 + ], + "quality": 0.9873329502501947 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 68, + 0 + ], + "quality": 0.9615499748176484 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"<\") (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 49, + 0 + ], + "quality": 0.9588373697728235 + }, + { + "class": false, + "condition": [ + "(clause (binop \">\" variable) (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 45, + 0 + ], + "quality": 0.9546582081971609 + }, + { + "class": false, + "condition": [ + "(clause (binop \"<\" variable) (binop variable \"=\"))" + ], + "distribution": [ + 42, + 0 + ], + "quality": 0.9506997402775986 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))))" + ], + "distribution": [ + 87, + 2 + ], + "quality": 0.9505321265580633 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 84, + 2 + ], + "quality": 0.9485259007878576 + }, + { + "class": false, + "condition": [ + "(clause (binop \"<\" variable) (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 37, + 0 + ], + "quality": 0.942300706923254 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"=<\" variable))" + ], + "distribution": [ + 36, + 0 + ], + "quality": 0.9402767441675692 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"=\"))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9278212669405331 + }, + { + "class": false, + "condition": [ + "(clause (binop \">=\" variable) (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9278212669405331 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args \"[]\"))))" + ], + "distribution": [ + 56, + 1 + ], + "quality": 0.9217042304910151 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop variable \">\"))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9192082960259287 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"is\"))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9192082960259287 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))", + "(clause (compound (functor \"min\") (args variable)))" + ], + "distribution": [ + 50, + 1 + ], + "quality": 0.9084973004782427 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"min\") (args (list (t variable))))) (compound (functor \"min\") (args variable)))" + ], + "distribution": [ + 128, + 8 + ], + "quality": 0.9082150350140412 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=<\") (compound (functor \"min\") (args (args variable))))" + ], + "distribution": [ + 25, + 0 + ], + "quality": 0.9063619829185183 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (binop \"=\" variable))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9008464777679259 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (t variable))))))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.894769852257665 + }, + { + "class": false, + "condition": [ + "(clause (binop \"<\" variable) (binop \"=\" variable))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8883555304556446 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))", + "(clause (binop variable \"=\"))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.8677377764570867 + }, + { + "class": false, + "condition": [ + "(clause (head (binop \"is\" variable)))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8556683824377487 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"<\" variable))", + "(clause (binop \">=\" variable) (binop \"is\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"is\" variable))" + ], + "distribution": [ + 2, + 37 + ], + "quality": 0.8496456395358111 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \">=\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \">=\" variable))", + "(clause (binop \">=\" variable) (binop \"=\" variable))" + ], + "distribution": [ + 1, + 29 + ], + "quality": 0.8304302143257842 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (binop \"is\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \">=\" variable) (binop \"is\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"is\" variable))" + ], + "distribution": [ + 3, + 38 + ], + "quality": 0.8214183376358836 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args \"[]\" (args \"0\")))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8195003264218347 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (binop variable \"=\"))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8195003264218347 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"min\") (args (args variable)))) (compound (functor \"min\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"min\") (args variable)))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.8170633938277345 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \">=\"))", + "(clause (binop \">=\" variable) (binop \"=\" variable))" + ], + "distribution": [ + 2, + 30 + ], + "quality": 0.8134952659081054 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"<\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \">=\" variable))", + "(clause (binop \">=\" variable) (binop \"=\" variable))" + ], + "distribution": [ + 2, + 30 + ], + "quality": 0.8134952659081054 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"is\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \">=\" variable))", + "(clause (binop \">=\" variable) (binop \"is\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))" + ], + "distribution": [ + 4, + 39 + ], + "quality": 0.8113558176908959 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" variable))", + "(clause (binop \">=\" variable) (binop \"=\" variable))" + ], + "distribution": [ + 5, + 40 + ], + "quality": 0.8034112515511181 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop variable \">=\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \">=\" variable))", + "(clause (binop variable \"<\") (binop \"=\" variable))" + ], + "distribution": [ + 2, + 29 + ], + "quality": 0.7960421693661188 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" variable))", + "(clause (binop variable \"=<\"))", + "(clause (binop variable \"=<\") (binop \"=\" variable))" + ], + "distribution": [ + 2, + 23 + ], + "quality": 0.7702731707769063 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" variable))", + "(clause (binop \"=\" variable))", + "(clause (binop variable \"=<\") (binop \"=\" variable))" + ], + "distribution": [ + 2, + 20 + ], + "quality": 0.7177858994582342 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (binop variable \"<\"))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop variable \"<\") (binop \"is\" variable))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"is\" variable))" + ], + "distribution": [ + 7, + 35 + ], + "quality": 0.7150650770015805 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"is\" variable))", + "(clause (binop \"is\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \"=<\" variable))" + ], + "distribution": [ + 0, + 9 + ], + "quality": 0.5558402480227483 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=<\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \"<\"))" + ], + "distribution": [ + 0, + 6 + ], + "quality": 0.5186825792811938 + }, + { + "class": true, + "condition": [ + "(clause (binop \"=<\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop variable \">\"))" + ], + "distribution": [ + 0, + 6 + ], + "quality": 0.5186825792811938 + }, + { + "class": true, + "condition": [ + "(clause (binop \"is\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"is\" variable))", + "(clause (binop \"=<\" variable))" + ], + "distribution": [ + 3, + 12 + ], + "quality": 0.4976823920347866 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"min\") (args (list (h variable)) (args variable)))))", + "(clause (head (compound (functor \"min\") (args (list (h variable))))) (binop \"=<\" variable))", + "(clause (binop \">\" variable) (binop \"=\" variable))" + ], + "distribution": [ + 0, + 7 + ], + "quality": 0.48071866766983756 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">=\"))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.4179829043252297 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/palindrome_1/bugs.json b/prolog/problems/lists_advanced/palindrome_1/bugs.json new file mode 100644 index 0000000..7b59512 --- /dev/null +++ b/prolog/problems/lists_advanced/palindrome_1/bugs.json @@ -0,0 +1,403 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args \"[]\"))))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"palindrome\") (args variable)))", + "(clause (compound (functor \"rev\") (args variable (args variable))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"rev\") (args variable)) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=\"))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop \"=\" variable))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"palindrome\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (compound (functor \"conc\") (args (list (t variable)))) (compound (functor \"palindrome\") (args variable)))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (binop variable \"==\"))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop variable \"==\"))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args variable))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"palindrome\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable) (t (list (h variable))))))))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"palindrome\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"rev\") (args variable)) (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"last_elem\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop \"==\" variable))", + "(clause (compound (functor \"rev\") (args variable)) (binop variable \"==\"))", + "(clause (compound (functor \"last_elem\") (args (args variable))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"last_elem\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop \"=\" (compound (functor \"rev\") (args variable))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"=:=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (binop variable \"=:=\"))", + "(clause (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop \"==\" variable))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"==\" variable))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args variable)) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"palindrome\") (args variable)))", + "(clause (compound (functor \"conc\") (args (list (h variable)) (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"rev\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"rev\") (args (args (list (t variable))))) (compound (functor \"palindrome\") (args variable)))", + "(clause (compound (functor \"conc\") (args (list (h variable)))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"palindrome\") (args \"[]\" (args \"[]\")))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"reverse\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"reverse\") (args (args variable))))", + "(clause (binop \"=\" variable) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop variable \"==\"))", + "(clause (compound (functor \"rev\") (args variable)) (binop \"==\" variable))", + "(clause (compound (functor \"reverse\") (args variable (args variable))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop variable \"=\"))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (head (compound (functor \"palindrome\") (args (list (t (list (h variable))))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"shiftright\") (args variable)))", + "(clause (compound (functor \"last_elem\") (args variable)) (compound (functor \"del\") (args (args variable))))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (compound (functor \"rev\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (t \"[]\"))))", + "(clause (binop variable \"=\" (list (t \"[]\"))))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"del_last\") (args (args \"[]\")))))", + "(clause (binop \"=\" (list (h variable) (t \"[]\"))))", + "(clause (compound (functor \"shiftright\") (args (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"rev\") (args (args (list (h variable))))) (binop \"==\" variable))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"last_elem\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop variable \"==\"))", + "(clause (compound (functor \"conc\") (args (list (h variable)))) (binop variable \"==\"))", + "(clause (head (compound (functor \"palindrome\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"last_elem\") (args (list (t variable)))))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" variable))", + "(clause (compound (functor \"last_elem\") (args variable)) (compound (functor \"palindrome\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (compound (functor \"last_elem\") (args (list (h variable)))))", + "(clause (compound (functor \"last_elem\") (args (args variable))) (binop \"==\" variable))", + "(clause (compound (functor \"conc\") (args (args (list (t variable))))) (compound (functor \"rev\") (args (args variable))))", + "(clause (binop (list (t variable)) \"=\") (compound (functor \"palindrome\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (binop \"==\" variable))", + "(clause (binop \"=\" variable) (compound (functor \"rev\") (args variable)))", + "(clause (binop (compound (functor \"rev\") (args variable)) \"=\" variable))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable))) (binop (binop \"+\" (list (h variable))) \"=\"))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop (compound (functor \"rev\") (args variable)) \"=\"))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"cut\") (args variable)))", + "(clause (binop (list (h variable)) \"=\") (binop variable \"=\"))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"shiftright\") (args variable)))", + "(clause (head (compound (functor \"del_last\") (args (list (h variable)) (args \"[]\")))))", + "(clause (compound (functor \"shiftright\") (args (args (list (t (list (t variable))))))) (compound (functor \"palindrome\") (args variable)))", + "(clause (head (compound (functor \"del_last\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"cut\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"del_last\") (args (args (list (t variable)))))) (compound (functor \"del_last\") (args (args variable))))", + "(clause (head (compound (functor \"last\") (args variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable))) (binop (list (h variable)) \"=\"))", + "(clause (head (compound (functor \"del_last\") (args (list (t variable))))) (compound (functor \"del_last\") (args variable)))", + "(clause (binop variable \"=\" (compound (functor \"rev\") (args variable))))", + "(clause (head (compound (functor \"last\") (args (args variable)))) (compound (functor \"last\") (args (args variable))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (list (h variable)))", + "(clause (head (compound (functor \"cut\") (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"last_elem\") (args (list (t variable)))) (compound (functor \"del_last\") (args variable)))", + "(clause (head (compound (functor \"del_last\") (args (list (h variable))))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"palindrome\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"last_elem\") (args variable)))", + "(clause (compound (functor \"last_elem\") (args (list (h variable)) (args variable))))", + "(clause (compound (functor \"concat\") (args (args (list (h variable))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"concat\") (args (args (args variable)))))", + "(clause (head (compound (functor \"palindrome\") (args (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (binop \"==\" variable))", + "(clause (head (compound (functor \"palindrome\") (args (list (h variable) (t (list (t (list (h variable))))))))))", + "(clause (binop variable \"=\" variable))", + "(clause (compound (functor \"del_last\") (args (args variable))) (compound (functor \"palindrome\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"rev\") (args (args variable))))", + "(clause (list (t variable)) (compound (functor \"palindrome\") (args variable)))", + "(clause (binop (compound (functor \"rev\") (args variable)) \"==\" variable))", + "(clause (list (h variable)))", + "(clause (compound (functor \"rev\") (args (args (list (t variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"==\"))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"palindrome\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args (list (h variable))))) (binop \"=\" variable))", + "(clause (binop (binop variable \"+\") \"=\") (binop variable \"=\"))", + "(clause (binop variable \"==\" (compound (functor \"rev\") (args variable))))", + "(clause (compound (functor \"concat\") (args variable)) (compound (functor \"concat\") (args (args (args variable)))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"palindrome\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"eq\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop \"==\" (compound (functor \"rev\") (args variable))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"eq\") (args (args variable))))", + "(clause (binop variable \"=\") (binop \"=\" (compound (functor \"rev\") (args variable))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"rev\") (args variable)) (compound (functor \"eq\") (args variable)))", + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop (compound (functor \"rev\") (args variable)) \"==\"))", + "(clause (binop variable \"=\") (compound (functor \"concat\") (args (args (args variable)))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args (list (h variable))))) (binop variable \"==\"))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.9220175081691375 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args variable))) (compound (functor \"rev\") (args (args variable))))" + ], + "distribution": [ + 6, + 102 + ], + "quality": 0.9214174451872571 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop variable \"==\"))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9131653327473639 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"rev\") (args variable)) (binop variable \"=\"))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop \"=\" variable))" + ], + "distribution": [ + 1, + 43 + ], + "quality": 0.9088225383162426 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"palindrome\") (args variable)))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.9000021394574145 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args variable))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8945588313618569 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args (args variable))) (binop \"==\" variable))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8826872961114901 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args (list (t variable))))) (compound (functor \"last_elem\") (args variable)))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8826872961114901 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop \"=\" (compound (functor \"rev\") (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8748253717871608 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"last_elem\") (args (args variable))) (binop \"=\" variable))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8748253717871608 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"last_elem\") (args (args variable))) (compound (functor \"del\") (args variable)))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8748253717871608 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"=:=\" variable))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8658128364243738 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args variable))) (binop \"==\" variable))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8554591270460289 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"==\" variable))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8417180723930746 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"palindrome\") (args variable)))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8277213071011541 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8129311580263633 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (binop variable \"=\"))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7932597029690587 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args (args variable))) (binop variable \"==\"))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7932597029690587 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (binop \"=\" variable))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7725068668211278 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args (args (list (h variable))))) (binop \"==\" variable))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7431958534489994 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop variable \"==\"))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7431958534489994 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"palindrome\") (args (list (t (list (h variable))))))) (binop \"=\" variable))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7431958534489994 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/rev_2/bugs.json b/prolog/problems/lists_advanced/rev_2/bugs.json new file mode 100644 index 0000000..c728b44 --- /dev/null +++ b/prolog/problems/lists_advanced/rev_2/bugs.json @@ -0,0 +1,610 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"rev\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"rev\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"rev\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"rev\") (args (args variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (args (list (h variable)))))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args (list (t variable)))))))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"rev\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"rev\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable) (t \"[]\"))))))", + "(clause (compound (functor \"rev\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"rev\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"rev\") (args variable (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"rev\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (t \"[]\")) (args variable)))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"rev\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (h variable)))) (args (list (h variable)))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"=\"))", + "(clause (compound (functor \"rev\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"rev\") (args (args (list (t variable)))))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args variable))))", + "(clause (head (compound (functor \"rev\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (h variable))))))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"rev\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"rev\") (args variable))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable)))))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"rev\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"rev\") (args (args variable (args variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"rev\") (args (args (args variable))))) (compound (functor \"rev\") (args (args (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args variable (args (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args \"[]\" (args (args variable)))))", + "(clause (compound (functor \"conc\") (args \"[]\")))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"shiftleft\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (h variable))))))) (compound (functor \"rev\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args variable))))", + "(clause (compound (functor \"conc\") (args \"[]\" (args (list (h variable))))))", + "(clause (compound (functor \"rev\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (t variable))))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"rev\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"rev\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable)) (args (list (h variable)))))))", + "(clause (binop variable \"=\") (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (t \"[]\")))) (args (list (h variable)))))))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (t \"[]\")))) (args (list (t (list (h variable)))))))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop variable \"=\") (compound (functor \"shiftleft\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable) (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (args (list (h variable)))))) (compound (functor \"rev\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"reverse\") (args (list (t variable))))) (compound (functor \"reverse\") (args variable)))", + "(clause (head (compound (functor \"reverse\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (t (list (h variable) (t \"[]\"))))))))", + "(clause (compound (functor \"rev\") (args variable (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args (list (t \"[]\")))))))", + "(clause (compound (functor \"rev\") (args (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (t \"[]\")) (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"rev\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (compound (functor \"rev\") (args (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"append\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"accRev\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"rev\") (args (args (list (t (list (h variable) (t \"[]\")))))))))", + "(clause (head (compound (functor \"accRev\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"rev\") (args (args (args variable)))))", + "(clause (head (compound (functor \"accRev\") (args (args variable)))) (compound (functor \"accRev\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"accRev\") (args (args (args variable))))) (compound (functor \"accRev\") (args (args (args variable)))))", + "(clause (compound (functor \"accRev\") (args (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"accRev\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"accRev\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (args (list (h variable) (t (list (t \"[]\")))))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"accRev\") (args (list (t variable))))) (compound (functor \"accRev\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"accRev\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args (list (t (list (t \"[]\")))))))))", + "(clause (head (compound (functor \"rev\") (args variable))) (compound (functor \"accRev\") (args variable)))", + "(clause (head (compound (functor \"accRev\") (args (list (h variable))))) (compound (functor \"accRev\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (binop \"=\" (compound (functor \"conc\") (args (args variable)))))", + "(clause (compound (functor \"rev\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (t (list (h variable))))))))", + "(clause (compound (functor \"conc\") (args \"[]\" (args (list (t (list (h variable))))))))", + "(clause (compound (functor \"accRev\") (args variable (args \"[]\"))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"accRev\") (args (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"rev\") (args (args variable))))" + ], + "distribution": [ + 121, + 0 + ], + "quality": 0.986556593510503 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 97, + 0 + ], + "quality": 0.9826434045656284 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args variable)))))" + ], + "distribution": [ + 77, + 0 + ], + "quality": 0.9773800451764163 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args (list (h variable)))))) (compound (functor \"rev\") (args (args variable))))" + ], + "distribution": [ + 65, + 0 + ], + "quality": 0.9725452093629203 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (h variable))))))" + ], + "distribution": [ + 62, + 0 + ], + "quality": 0.9710153654076905 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args (list (t variable)))))))" + ], + "distribution": [ + 58, + 0 + ], + "quality": 0.968705070624353 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args (args variable))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 57, + 0 + ], + "quality": 0.9680718894186054 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args (args variable))))" + ], + "distribution": [ + 42, + 0 + ], + "quality": 0.9539159922513188 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"rev\") (args (args variable))))" + ], + "distribution": [ + 39, + 0 + ], + "quality": 0.9498796288138498 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 38, + 0 + ], + "quality": 0.9482884419024931 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))" + ], + "distribution": [ + 37, + 0 + ], + "quality": 0.9465964556697102 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9335831017115431 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 30, + 0 + ], + "quality": 0.9308550600732364 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (h variable)) (args variable)))))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9246600103422892 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.9172907001508989 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args variable)) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 25, + 0 + ], + "quality": 0.9148346932895947 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9100998125124599 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 15, + 163 + ], + "quality": 0.9082355033795803 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args variable (args variable)))))" + ], + "distribution": [ + 36, + 1 + ], + "quality": 0.9043979683819339 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 16, + 165 + ], + "quality": 0.9042753585154341 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8982912661352064 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"conc\") (args variable))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8785845199323865 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 23, + 166 + ], + "quality": 0.8716355529231646 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8613551527158146 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (t variable))))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8508714504566388 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8508714504566388 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8382228419619023 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (t (list (h variable))))))) (compound (functor \"rev\") (args variable)))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8382228419619023 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 35, + 171 + ], + "quality": 0.824434570232329 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (list (h variable))))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8237200730367206 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"rev\") (args (args variable))) (binop variable \"=\"))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8237200730367206 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args (list (h variable)))))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.819408982442943 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"rev\") (args (args variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.819408982442943 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 0, + 11 + ], + "quality": 0.6906520725171637 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 1, + 14 + ], + "quality": 0.6849688185649977 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args \"[]\"))))", + "(clause (head (compound (functor \"rev\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 76, + 166 + ], + "quality": 0.6683723967959012 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 93, + 174 + ], + "quality": 0.6376377180918508 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"rev\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"rev\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 164, + 186 + ], + "quality": 0.5221807820252026 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/shiftleft_2/bugs.json b/prolog/problems/lists_advanced/shiftleft_2/bugs.json new file mode 100644 index 0000000..04609fd --- /dev/null +++ b/prolog/problems/lists_advanced/shiftleft_2/bugs.json @@ -0,0 +1,349 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args \"[]\"))))", + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftleft\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"shiftleft\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"shiftleft\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args (list (t variable)))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"shiftleft\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"shiftleft\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (binop \"=\" (compound (functor \"conc\") (args variable))))", + "(clause (head (compound (functor \"shiftleft\") (args variable))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (head (compound (functor \"left\") (args (list (t (list (h variable)))) (args (list (h variable)))))))", + "(clause (head (compound (functor \"left\") (args (list (t (list (t variable))))))) (compound (functor \"left\") (args (list (t variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (args (compound (functor \"conc\") (args (args (args variable)))))))))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"shiftleft\") (args (list (h variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"concat\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"append\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args variable)) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable)) (args (compound (functor \"conc\") (args variable)))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"left\") (args (list (h variable)))))", + "(clause (head (compound (functor \"left\") (args (list (h variable))))) (compound (functor \"left\") (args (list (h variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"left\") (args (list (t variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (compound (functor \"shiftleft\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t (list (h variable))))))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"left\") (args (args (list (t variable)))))) (compound (functor \"left\") (args (args variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable)) (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args variable))))", + "(clause (head (compound (functor \"shiftleft\") (args \"[]\" (args (list (h variable)))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args (compound (functor \"conc\") (args (args (list (h variable))))))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"concat\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t (list (h variable)))) (args (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"shiftleft\") (args (args (list (h variable)))))) (compound (functor \"left\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (args (list (t variable)))))) (compound (functor \"left\") (args (args (list (t variable))))))", + "(clause (compound (functor \"shiftleft\") (args (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"shiftleft\") (args (list (t (list (h variable)))))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 69, + 0 + ], + "quality": 0.9735063586852684 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 4, + 186 + ], + "quality": 0.9729895641497852 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable)) (args (list (h variable)))))))" + ], + "distribution": [ + 41, + 0 + ], + "quality": 0.9545110973173283 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9383064708954235 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args (list (t variable)))))))" + ], + "distribution": [ + 29, + 0 + ], + "quality": 0.9337500809431362 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 13, + 187 + ], + "quality": 0.9297722589938553 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.928131935844377 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8999602495440122 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8945160184994223 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args (list (t (list (h variable)))))))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8885033852926123 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8735634581359323 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable)) (args variable)))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8658360225106579 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"shiftleft\") (args (args variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8274301222040094 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7906938494946442 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7906938494946442 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 1, + 18 + ], + "quality": 0.7836264816857417 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (args (list (h variable)))))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7651868458596011 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (binop \"=\" (compound (functor \"conc\") (args variable))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7376026176672326 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7376026176672326 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7376026176672326 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args variable))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7376026176672326 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6946627662225194 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 113, + 208 + ], + "quality": 0.6418259859921002 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/shiftright_2/bugs.json b/prolog/problems/lists_advanced/shiftright_2/bugs.json new file mode 100644 index 0000000..cab63bf --- /dev/null +++ b/prolog/problems/lists_advanced/shiftright_2/bugs.json @@ -0,0 +1,464 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"shiftright\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"shiftleft\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args \"[]\"))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"shiftleft\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"shiftright\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"shiftright\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (compound (functor \"rev\") (args (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"del\") (args variable)) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"last_elem\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args variable)) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"rev\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"last_elem\") (args variable)) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"last_elem\") (args (args variable))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"shiftright\") (args (args variable))))", + "(clause (compound (functor \"last_elem\") (args (args variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"rev\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"shiftright\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"t_elem\") (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (args (list (h variable)))))))", + "(clause (compound (functor \"rev\") (args (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"t_elem\") (args (args variable)))))", + "(clause (compound (functor \"del\") (args variable)) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"rev\") (args variable)) (compound (functor \"del\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"shiftright\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"shiftright\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"rev\") (args (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftright\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"shiftright\") (args (list (t (list (h variable)))) (args (list (h variable)))))))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable)) (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"rev\") (args (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"shiftleft\") (args (args variable))) (compound (functor \"rev\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (h variable)))))) (compound (functor \"shiftright\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"rev\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (compound (functor \"shiftright\") (args (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"shiftright\") (args (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args variable (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"del_last\") (args (args \"[]\" (args variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (t (list (t variable)))))))) (compound (functor \"shiftright\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"del_last\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (compound (functor \"shiftright\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"shiftright\") (args (args (compound (functor \"conc\") (args (args (args variable))))))))", + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"shiftleft\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"last_elem\") (args (args variable)))) (compound (functor \"last_elem\") (args (args variable))))", + "(clause (compound (functor \"last_elem\") (args (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"del_last\") (args variable)))", + "(clause (head (compound (functor \"del_last\") (args (list (t \"[]\")) (args (args variable))))))", + "(clause (head (compound (functor \"del_last\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (h variable)))))) (compound (functor \"del_last\") (args (args (args variable)))))", + "(clause (head (compound (functor \"del_last\") (args (list (t variable))))) (compound (functor \"del_last\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"del_last\") (args (list (h variable)) (args \"[]\")))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"del_last\") (args (list (h variable)) (args (args variable))))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"del\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"del_last\") (args (list (t \"[]\")) (args \"[]\")))))", + "(clause (head (compound (functor \"del_last\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"del_last\") (args (args (args variable))))) (compound (functor \"del_last\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args \"[]\" (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"shiftright\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"last\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"findlast\") (args (list (h variable)))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (args variable)))))" + ], + "distribution": [ + 43, + 0 + ], + "quality": 0.9544875092982839 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 42, + 1 + ], + "quality": 0.9256141411419427 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9241448036677106 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"shiftright\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 2, + 66 + ], + "quality": 0.9230760007308819 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.920998930735984 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 33, + 1 + ], + "quality": 0.9036493742845172 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"shiftright\") (args (args variable))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.8994670201920275 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 1, + 40 + ], + "quality": 0.894174740526763 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"shiftleft\") (args (args variable))))" + ], + "distribution": [ + 3, + 47 + ], + "quality": 0.8879015719689589 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 2, + 45 + ], + "quality": 0.8828800380948056 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8746032887862484 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8746032887862484 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8746032887862484 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8574419492958788 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8574419492958788 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (binop variable \"=\"))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.823250673256642 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8175234160576993 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"t_elem\") (args variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7757149640806767 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7757149640806767 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"shiftright\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7471668102545188 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 1, + 16 + ], + "quality": 0.7359401462937517 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.7247160718268745 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7162895278146735 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args (list (h variable)) (args variable)))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6715599948189581 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"shiftright\") (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6715599948189581 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"rev\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 0, + 7 + ], + "quality": 0.6625971589972083 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"last_elem\") (args (args variable))) (compound (functor \"conc\") (args (list (h variable)))))" + ], + "distribution": [ + 2, + 11 + ], + "quality": 0.609507882414573 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"del\") (args variable)) (compound (functor \"conc\") (args (list (h variable)))))" + ], + "distribution": [ + 6, + 14 + ], + "quality": 0.4752154241003168 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/sublist_2/bugs.json b/prolog/problems/lists_advanced/sublist_2/bugs.json new file mode 100644 index 0000000..acce3a7 --- /dev/null +++ b/prolog/problems/lists_advanced/sublist_2/bugs.json @@ -0,0 +1,527 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"sublist\") (args \"[]\"))))", + "(clause (head (compound (functor \"sublist\") (args \"[]\" (args \"[]\")))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"sublist\") (args variable)))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sublist\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"sublist\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (args (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args variable))))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"sublist\") (args (args (list (t variable)))))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (binop variable \"=\") (compound (functor \"sublist\") (args (args variable))))", + "(clause (compound (functor \"sublist\") (args (args variable))) (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args (args (list (t variable)))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable)) (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args (args variable))) (binop \"=\" variable))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (compound (functor \"sublist\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args variable (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"sublist\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (args (list (t variable)))))) (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\") (compound (functor \"sublist\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args \"[]\"))))", + "(clause (compound (functor \"sublist\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args variable (args \"[]\"))))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args \"[]\" (args variable)))))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (compound (functor \"sublist\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (list (t variable)))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (binop variable \"\\=\"))", + "(clause (binop \"=\" (list (h variable) (t \"[]\"))))", + "(clause (compound (functor \"conc\") (args (args variable (args variable)))))", + "(clause (binop variable \"=\" (list (t \"[]\"))))", + "(clause (binop \"=\" (list (t \"[]\"))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sublist\") (args \"[]\" (args variable)))))", + "(clause (binop variable \"\\=\" \"[]\"))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (unop \\+ (binop variable \"=\")))", + "(clause (binop \"\\=\" \"[]\"))", + "(clause (binop \"=\" (list (t (list (t variable))))))", + "(clause (unop \\+ (binop \"=\" \"[]\")))", + "(clause (unop \\+ (binop variable \"=\" \"[]\")))", + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (compound (functor \"sublist\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (binop variable \"=\")))", + "(clause (head (binop \"=\" variable)))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable)) (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"sublist\") (args (list (h variable)))))", + "(clause (compound (functor \"sublist\") (args (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (binop \"=\" variable))", + "(clause (binop variable \"\\=\"))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (compound (functor \"sublist\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable)) (args variable)))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (binop variable \"is\"))", + "(clause (compound (functor \"conc\") (args (list (t variable)))))", + "(clause (compound (functor \"sublist\") (args variable (args variable))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable) (t variable))))))", + "(clause (head (compound (functor \"sublist\") (args (list (t (list (t variable))))))) (compound (functor \"sublist\") (args variable)))", + "(clause (binop \"\\==\" \"[]\"))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable)) (args \"[]\")))))", + "(clause (binop variable \"\\==\" \"[]\"))", + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable (args (list (t variable))))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"fsub\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable)) (args (list (t variable)))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (binop variable \"\\=\"))", + "(clause (compound (functor \"conc\") (args \"[]\" (args variable))))", + "(clause (compound (functor \"sublist\") (args (args variable))) (unop \\+ (binop variable \"=\")))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args \"[]\" (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (list (h variable)) (args variable))))", + "(clause (head (compound (functor \"fsub\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (compound (functor \"conc\") (args \"[]\")))", + "(clause (binop (list (h variable)) \"=\"))", + "(clause (head (compound (functor \"subl\") (args (args (list (t variable)))))) (compound (functor \"subl\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"subl\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"subl\") (args (args (args variable)))))", + "(clause (head (compound (functor \"subl\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"subl\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sublist\") (args (args (list (t variable)))))) (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"subl\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"sublist\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"subl\") (args (args \"[]\" (args variable))))))", + "(clause (head (compound (functor \"subl\") (args variable (args \"[]\")))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"subl\") (args (args (args variable))))) (compound (functor \"subl\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"=<\" variable))", + "(clause (compound (functor \"conc\") (args (args (list (t variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"subl\") (args variable))) (compound (functor \"subl\") (args variable)))", + "(clause (compound (functor \"subl\") (args variable (args variable))))", + "(clause (head (compound (functor \"subl\") (args (args \"[]\")))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 96, + 0 + ], + "quality": 0.9822117568233223 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (args variable)))))" + ], + "distribution": [ + 59, + 0 + ], + "quality": 0.9678944049149696 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (args (list (t variable)))))) (compound (functor \"sublist\") (args (args variable))))" + ], + "distribution": [ + 45, + 0 + ], + "quality": 0.95558425679854 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 45, + 0 + ], + "quality": 0.95558425679854 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"sublist\") (args variable)))" + ], + "distribution": [ + 77, + 1 + ], + "quality": 0.9469515797981775 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 58, + 1 + ], + "quality": 0.9427119683066102 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (list (h variable)) (args (list (h variable)))))))" + ], + "distribution": [ + 105, + 4 + ], + "quality": 0.9380206385193013 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args variable))) (binop \"=\" variable))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9338975659148043 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 122, + 5 + ], + "quality": 0.9291150449571097 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"sublist\") (args variable)))" + ], + "distribution": [ + 60, + 1 + ], + "quality": 0.9260809884815985 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 47, + 1 + ], + "quality": 0.9259029131445955 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 2, + 73 + ], + "quality": 0.9258076118083884 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args \"[]\" (args \"[]\")))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"sublist\") (args variable)))" + ], + "distribution": [ + 73, + 2 + ], + "quality": 0.9220920542429745 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 156, + 10 + ], + "quality": 0.9195686065251332 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9180369800120464 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 6, + 104 + ], + "quality": 0.9159805216406367 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"sublist\") (args variable)))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9003487095519815 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (list (h variable)))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8891079363889672 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8891079363889672 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.8822628861424969 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"sublist\") (args (args variable))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.8822628861424969 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.8822628861424969 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args (list (t variable)))))) (compound (functor \"sublist\") (args variable)))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8748108331097285 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (binop variable \"=\"))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8663218629482545 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"sublist\") (args (args variable))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.854134114032757 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.854134114032757 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 25, + 109 + ], + "quality": 0.7903132859329443 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (list (t variable))))) (compound (functor \"sublist\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 1, + 15 + ], + "quality": 0.7218208238692915 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 4, + 22 + ], + "quality": 0.7003614662287178 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"\\==\" \"[]\"))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.47276259970016454 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"fsub\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 0, + 3 + ], + "quality": 0.39632794402854515 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/lists_advanced/sum_2/bugs.json b/prolog/problems/lists_advanced/sum_2/bugs.json new file mode 100644 index 0000000..8d43a45 --- /dev/null +++ b/prolog/problems/lists_advanced/sum_2/bugs.json @@ -0,0 +1,403 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args (list (t variable))))) (compound (functor \"sum\") (args variable)))", + "(clause (head (compound (functor \"sum\") (args \"[]\"))))", + "(clause (head (compound (functor \"sum\") (args (args \"0\")))))", + "(clause (head (compound (functor \"sum\") (args \"[]\" (args \"0\")))))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" (binop \"+\" variable)))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"sum\") (args (list (h variable)) (args variable)))))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" (binop variable \"+\")))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"sum\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sum\") (args (args variable)))) (compound (functor \"sum\") (args (args variable))))", + "(clause (binop variable \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"sum\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop variable \"is\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"sum\") (args variable)))", + "(clause (binop \"is\" \"0\"))", + "(clause (binop variable \"is\" \"0\"))", + "(clause (binop variable \"=\" \"0\"))", + "(clause (binop \"=\" \"0\"))", + "(clause (binop variable \"=\"))", + "(clause (binop \"is\" (binop variable \"+\")) (compound (functor \"sum\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"is\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"sum\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"sum\") (args (list (t \"[]\")) (args variable)))))", + "(clause (head (compound (functor \"sum\") (args (list (t \"[]\"))))))", + "(clause (binop variable \"is\") (compound (functor \"sum\") (args (args variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"=\" (binop variable \"+\")))", + "(clause (binop \"is\" (binop variable \"+\" \"1\")))", + "(clause (binop variable \"is\" (binop \"+\" \"1\")))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" variable))", + "(clause (binop \"is\" (binop \"+\" \"1\")))", + "(clause (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args (args variable)))))", + "(clause (head (compound (functor \"sum\") (args (list (t (list (h variable))))))) (compound (functor \"sum\") (args variable)))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"=\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"sum\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sum\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"sum\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"sum\") (args (args (binop \"+\" variable))))) (compound (functor \"sum\") (args (args variable))))", + "(clause (head (compound (functor \"sum\") (args (list (h variable)) (args (binop variable \"+\"))))))", + "(clause (binop \"is\" (binop \"+\" variable)) (compound (functor \"sum\") (args (args variable))))", + "(clause (binop variable \"is\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"sum\") (args (args (binop variable \"is\"))))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"=\" (binop variable \"+\")))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 50, + 0 + ], + "quality": 0.9632380563802319 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 37, + 0 + ], + "quality": 0.9496444143112104 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (list (h variable))))))" + ], + "distribution": [ + 35, + 0 + ], + "quality": 0.9466471466478726 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sum\") (args (args variable))) (binop variable \"is\"))" + ], + "distribution": [ + 31, + 0 + ], + "quality": 0.9409973039853357 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args (args \"0\")))))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 1, + 60 + ], + "quality": 0.9404658615540767 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (list (t variable))))) (compound (functor \"sum\") (args variable)))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"sum\") (args (args \"0\")))))" + ], + "distribution": [ + 6, + 120 + ], + "quality": 0.9297290996795977 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (compound (functor \"sum\") (args (args variable))))", + "(clause (head (compound (functor \"sum\") (args (list (t variable))))) (compound (functor \"sum\") (args variable)))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9237451844781032 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (compound (functor \"sum\") (args (args variable))))" + ], + "distribution": [ + 36, + 1 + ], + "quality": 0.9180107826985625 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args \"[]\"))))", + "(clause (head (compound (functor \"sum\") (args (list (t variable))))) (compound (functor \"sum\") (args variable)))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" (binop \"+\" variable)))" + ], + "distribution": [ + 10, + 130 + ], + "quality": 0.9073820930208183 + }, + { + "class": false, + "condition": [ + "(clause (binop \"is\" (binop variable \"+\")) (compound (functor \"sum\") (args (args variable))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8963126299115304 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args (args \"0\")))))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))" + ], + "distribution": [ + 5, + 64 + ], + "quality": 0.8839500532375172 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args \"[]\"))))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" (binop variable \"+\")))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 5, + 62 + ], + "quality": 0.8774224263730913 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"=\" (binop variable \"+\")))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8544022016698913 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args (args \"0\")))))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 18, + 125 + ], + "quality": 0.8529414910677036 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args \"0\")))))", + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 8, + 61 + ], + "quality": 0.8398456460259225 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.814606816591379 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args \"[]\"))))", + "(clause (compound (functor \"sum\") (args (args variable))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 28, + 136 + ], + "quality": 0.8099451412928996 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"=\" (binop \"+\" variable)))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7945743104893194 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (list (t (list (h variable))))))) (compound (functor \"sum\") (args variable)))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7945743104893194 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sum\") (args (args \"0\")))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7413419315141939 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args (binop \"+\" variable))))) (compound (functor \"sum\") (args (args variable))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7392363690313698 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args \"[]\" (args \"[]\")))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7392363690313698 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"is\" (binop \"+\" variable)))" + ], + "distribution": [ + 1, + 13 + ], + "quality": 0.7149447263575659 + }, + { + "class": false, + "condition": [ + "(clause (binop \"is\" (binop \"+\" variable)) (compound (functor \"sum\") (args (args variable))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6998879729141584 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sum\") (args (args variable))))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6569507265887357 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (list (h variable))))) (binop \"=\" (binop variable \"+\")))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6569507265887357 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args (binop variable \"is\"))))))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6569507265887357 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"is\" (binop \"+\" variable)))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6569507265887357 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sum\") (args (args variable)))) (binop variable \"is\"))", + "(clause (head (compound (functor \"sum\") (args variable))) (binop variable \"=\"))" + ], + "distribution": [ + 4, + 18 + ], + "quality": 0.6399461602289443 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sets/count_3/bugs.json b/prolog/problems/sets/count_3/bugs.json new file mode 100644 index 0000000..7078972 --- /dev/null +++ b/prolog/problems/sets/count_3/bugs.json @@ -0,0 +1,509 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"count\") (args variable))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (t variable)))))) (compound (functor \"count\") (args (args variable))))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop variable \"is\"))", + "(clause (head (compound (functor \"count\") (args variable))))", + "(clause (head (compound (functor \"count\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"count\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"count\") (args (args (args \"0\"))))))", + "(clause (head (compound (functor \"count\") (args (args \"[]\" (args \"0\"))))))", + "(clause (binop variable \"is\" (binop \"+\" \"1\")))", + "(clause (binop \"is\" (binop \"+\" \"1\")))", + "(clause (binop \"is\" (binop variable \"+\" \"1\")))", + "(clause (head (compound (functor \"count\") (args variable (args (args \"0\"))))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"count\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (compound (functor \"count\") (args (args (args variable)))))", + "(clause (binop variable \"is\"))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (compound (functor \"count\") (args variable)))", + "(clause (binop \"is\" (binop variable \"+\")))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" variable))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"=\" variable))", + "(clause (compound (functor \"count\") (args variable)) (binop variable \"=\"))", + "(clause (compound (functor \"count\") (args (args (args variable)))))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"==\"))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"==\" variable))", + "(clause (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"\\=\" variable))", + "(clause (binop variable \"=\"))", + "(clause (compound (functor \"count\") (args variable)) (binop variable \"==\"))", + "(clause (binop \"=\" variable))", + "(clause (binop variable \"is\" (binop variable \"+\")))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"count\") (args (args variable))))", + "(clause (head (compound (functor \"count\") (args (args (list (t variable)))))) (compound (functor \"count\") (args variable)))", + "(clause (binop variable \"==\"))", + "(clause (compound (functor \"count\") (args variable)) (binop \"=\" variable))", + "(clause (head (compound (functor \"count\") (args (args (args \"1\"))))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"=:=\"))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"=:=\" variable))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)) (args \"1\"))))))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"\\==\"))", + "(clause (head (compound (functor \"count\") (args variable (args (args \"1\"))))))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"\\==\" variable))", + "(clause (head (compound (functor \"count\") (args (args \"[]\" (args variable))))))", + "(clause (compound (functor \"count\") (args variable)) (binop variable \"=:=\"))", + "(clause (binop \"==\" variable))", + "(clause (binop variable \"=\") (compound (functor \"count\") (args variable)))", + "(clause (compound (functor \"count\") (args variable)) (binop variable \"\\=\"))", + "(clause (binop variable \"\\=\") (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop variable \"==\"))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"==\" variable))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" (binop \"+\" variable)))", + "(clause (binop variable \"\\==\") (compound (functor \"count\") (args variable)))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \"is\"))", + "(clause (binop variable \"is\" (binop \"1\" \"+\")))", + "(clause (binop \"is\" (binop \"1\" \"+\")))", + "(clause (binop \"is\" (binop \"1\" \"+\" variable)))", + "(clause (binop variable \"==\") (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"=\\=\"))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"=\\=\" variable))", + "(clause (compound (functor \"count\") (args variable)) (binop \"\\==\" variable))", + "(clause (binop \"=:=\" variable))", + "(clause (compound (functor \"count\") (args (args variable))) (binop \"is\" (binop variable \"+\")))", + "(clause (compound (functor \"count\") (args variable)) (binop \"==\" variable))", + "(clause (head (compound (functor \"count\") (args \"[]\"))))", + "(clause (binop variable \"=\" \"0\"))", + "(clause (binop \"=\" \"0\"))", + "(clause (binop variable \"is\" (binop \"+\" \"0\")))", + "(clause (binop \"is\" (binop \"+\" \"0\")))", + "(clause (binop \"is\" (binop variable \"+\" \"0\")))", + "(clause (compound (functor \"count\") (args variable)) (binop variable \"=\\=\"))", + "(clause (binop \"=\" variable) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args \"[]\" (args (args \"0\"))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"count\") (args (args variable))))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (compound (functor \"count\") (args (args variable))))", + "(clause (binop variable \"=:=\"))", + "(clause (binop \"=\" (binop \"+\" \"1\")))", + "(clause (binop \"=\" (binop variable \"+\" \"1\")))", + "(clause (binop variable \"=\" (binop \"+\" \"1\")))", + "(clause (binop \"is\" (binop \"+\" variable)))", + "(clause (head (compound (functor \"count\") (args (args variable)))))", + "(clause (head (compound (functor \"count\") (args variable))) (unop \\+ (binop variable \"=\")))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"=:=\" variable))", + "(clause (head (compound (functor \"count\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop \"is\" \"0\"))", + "(clause (head (compound (functor \"count\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"count\") (args (args (list (t (list (h variable)))))))) (compound (functor \"count\") (args (args variable))))", + "(clause (compound (functor \"count\") (args variable)) (binop variable \"\\==\"))", + "(clause (binop \"\\==\" variable))", + "(clause (binop \"is\" (binop variable \"+\")) (compound (functor \"count\") (args (args (args variable)))))", + "(clause (binop variable \"is\" \"0\"))", + "(clause (head (compound (functor \"count\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (unop \\+ (binop \"=\" variable)))", + "(clause (binop variable \"is\") (compound (functor \"count\") (args (args (args variable)))))", + "(clause (unop \\+ (binop variable \"=\")) (compound (functor \"count\") (args variable)))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"=\" (binop variable \"+\")))", + "(clause (head (compound (functor \"count\") (args (args variable)))) (compound (functor \"count\") (args (args variable))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop variable \"=:=\"))", + "(clause (head (compound (functor \"count\") (args (list (t variable))))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"count\") (args variable (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (binop \"is\" variable))", + "(clause (head (compound (functor \"count\") (args \"[]\" (args variable)))))", + "(clause (binop \"\\=\" variable) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (compound (functor \"\\+\") (args (binop \"=\" variable))))", + "(clause (head (compound (functor \"count\") (args (args variable (args \"0\"))))))", + "(clause (head (compound (functor \"count\") (args (args (list (t \"[]\")) (args \"1\"))))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop variable \"=\\=\"))", + "(clause (head (compound (functor \"count\") (args variable))) (compound (functor \"\\+\") (args (binop variable \"=\"))))", + "(clause (head (compound (functor \"count\") (args (args (args (binop \"+\" \"1\")))))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)) (args (binop \"+\" \"1\")))))))", + "(clause (binop \"=\" (binop variable \"+\")))", + "(clause (head (compound (functor \"count\") (args (args (args (binop variable \"+\" \"1\")))))))", + "(clause (head (compound (functor \"count\") (args variable (args (args (binop \"+\" \"1\")))))))", + "(clause (head (compound (functor \"count\") (args variable (args (args variable))))))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"=\\=\" variable))", + "(clause (head (compound (functor \"count\") (args (args (list (t variable)) (args (binop \"+\" \"1\")))))))", + "(clause (binop \"\\==\" variable) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop \"is\" variable))", + "(clause (binop variable \"\\==\"))", + "(clause (binop variable \"is\" variable))", + "(clause (binop variable \"=\\=\"))", + "(clause (head (compound (functor \"count\") (args (args (args (binop variable \"+\")))))) (compound (functor \"count\") (args (args (args variable)))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)) (args variable))))))", + "(clause (head (binop variable \"is\")))", + "(clause (compound (functor \"count\") (args variable)) (binop \"\\=\" variable))", + "(clause (head (binop \"is\" (binop variable \"+\"))))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop \"=\" variable))", + "(clause (binop variable \"is\") (binop \"=\" variable))", + "(clause (binop \"=\\=\" variable))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"is\"))", + "(clause (head (compound (functor \"count\") (args variable))) (compound (functor \"isEqual\") (args (args variable))))", + "(clause (head (compound (functor \"count\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"\\+\") (args (binop variable \"=\"))) (compound (functor \"count\") (args variable)))", + "(clause (compound (functor \"count\") (args variable)) (binop variable \"is\"))", + "(clause (binop variable \"=\" variable))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (compound (functor \"isEqual\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)) (args \"0\"))))))", + "(clause (binop \"=:=\" variable) (compound (functor \"count\") (args variable)))", + "(clause (binop variable \"=\\=\") (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"is\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"count\") (args (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (compound (functor \"count\") (args (args (list (h variable))))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 69, + 0 + ], + "quality": 0.9728352042140178 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"is\" (binop variable \"+\")))" + ], + "distribution": [ + 56, + 0 + ], + "quality": 0.96538520453629 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"=:=\"))" + ], + "distribution": [ + 43, + 0 + ], + "quality": 0.9522326624826108 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args (args variable))))))" + ], + "distribution": [ + 40, + 0 + ], + "quality": 0.948123462766655 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args (list (t variable)))))) (compound (functor \"count\") (args variable)))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9190687991731815 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"=\\=\"))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.9127090987711932 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \"is\"))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9015964075625628 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=:=\" variable))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.8979447555412412 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args \"[]\"))))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.8979447555412412 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (binop \"+\" \"1\")))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8368123456364159 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable))) (binop \"=:=\" variable))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.820135337297635 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args variable)))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.820135337297635 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"count\") (args (args (args \"0\"))))))" + ], + "distribution": [ + 0, + 18 + ], + "quality": 0.8161615821890182 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args (list (t (list (h variable)))))))) (compound (functor \"count\") (args (args variable))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.801882381889035 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.801882381889035 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args \"[]\")))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (compound (functor \"count\") (args (args (args variable)))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"\\=\" variable))" + ], + "distribution": [ + 0, + 17 + ], + "quality": 0.7802239031619637 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args \"[]\")))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" (binop variable \"+\")))", + "(clause (binop variable \"\\=\") (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"\\=\" variable))" + ], + "distribution": [ + 1, + 21 + ], + "quality": 0.7737068914461994 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"count\") (args variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop variable \"is\"))" + ], + "distribution": [ + 1, + 19 + ], + "quality": 0.7694989834231951 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (binop variable \"is\"))", + "(clause (head (compound (functor \"count\") (args variable (args \"[]\")))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"count\") (args (args (args variable))))) (compound (functor \"count\") (args (args (args variable)))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"\\==\" variable))" + ], + "distribution": [ + 1, + 20 + ], + "quality": 0.7464303340007633 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" variable))", + "(clause (binop variable \"==\"))" + ], + "distribution": [ + 1, + 14 + ], + "quality": 0.7197344632270223 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"count\") (args variable))))" + ], + "distribution": [ + 1, + 14 + ], + "quality": 0.6820439276723868 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (unop \\+ (binop \"=\" variable)))" + ], + "distribution": [ + 0, + 9 + ], + "quality": 0.6699209545124805 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args \"[]\")))))", + "(clause (binop \"=\" variable))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"=\" variable))" + ], + "distribution": [ + 1, + 11 + ], + "quality": 0.5876909575878514 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable (args \"[]\")))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" variable))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (binop \"=\" variable))" + ], + "distribution": [ + 1, + 12 + ], + "quality": 0.578881574974713 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"\\+\") (args (binop variable \"=\"))) (compound (functor \"count\") (args variable)))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.5748167731513768 + }, + { + "class": true, + "condition": [ + "(clause (binop \"\\==\" variable) (compound (functor \"count\") (args variable)))" + ], + "distribution": [ + 1, + 7 + ], + "quality": 0.5727130861637655 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args (args (list (h variable)))))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"count\") (args variable))) (binop \"\\==\" variable))" + ], + "distribution": [ + 0, + 7 + ], + "quality": 0.5690003226281385 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"count\") (args variable (args (args \"0\"))))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" (binop variable \"+\")))", + "(clause (binop \"==\" variable))", + "(clause (binop variable \"is\"))" + ], + "distribution": [ + 5, + 18 + ], + "quality": 0.5503110535995617 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop \"is\" variable))", + "(clause (binop variable \"=\") (compound (functor \"count\") (args variable)))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.38635980460492575 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sets/diff_3/bugs.json b/prolog/problems/sets/diff_3/bugs.json new file mode 100644 index 0000000..af1c5fd --- /dev/null +++ b/prolog/problems/sets/diff_3/bugs.json @@ -0,0 +1,320 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"diff\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (list (t variable))))) (compound (functor \"diff\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args \"[]\"))))", + "(clause (head (compound (functor \"diff\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"diff\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"diff\") (args (args variable (args \"[]\"))))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"diff\") (args (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"diff\") (args (args (args (list (t variable))))))) (compound (functor \"diff\") (args (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"diff\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args \"[]\")))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"diff\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"diff\") (args (args \"[]\" (args variable))))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"diff\") (args variable (args (args variable))))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"diff\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"diff\") (args (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (compound (functor \"diff\") (args (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"diff\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))))", + "(clause (head (compound (functor \"diff\") (args \"[]\" (args (args variable))))))", + "(clause (compound (functor \"diff\") (args variable)))", + "(clause (binop \"=\" variable))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"diff\") (args (args variable (args variable))))))", + "(clause (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (list (t variable)))))) (compound (functor \"diff\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args variable))) (compound (functor \"diff\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"diff\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))) (compound (functor \"diff\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"diff\") (args (args (list (h variable)))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args variable))) (compound (functor \"intersect\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args variable))) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (args (args (list (h variable))))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (head (compound (functor \"diff\") (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"diff\") (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"diff\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (list (h variable)))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"diff\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"diff\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (list (t variable))))) (compound (functor \"diff\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"diff\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"member\") (args variable)))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"diff\") (args (args variable))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"intersect\") (args (list (h variable)))))", + "(clause (head (compound (functor \"diff\") (args (list (t variable))))) (compound (functor \"intersect\") (args (list (t variable)))))", + "(clause (head (compound (functor \"diff\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"diff\") (args (list (t variable))))) (compound (functor \"intersect\") (args variable)))", + "(clause (compound (functor \"memb\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (list (h variable)))))))", + "(clause (compound (functor \"union\") (args variable)) (compound (functor \"intersect\") (args variable)))", + "(clause (compound (functor \"deff\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (compound (functor \"diff\") (args (args variable))))", + "(clause (compound (functor \"union\") (args (args variable))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"member\") (args variable)) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (compound (functor \"intersect\") (args (list (t variable)))) (compound (functor \"diff\") (args variable)))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (compound (functor \"del\") (args (args (args variable)))))", + "(clause (compound (functor \"diff\") (args (args variable))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"diff\") (args variable)) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"diff\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"delete\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"diff\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"member\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"member\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"count\") (args (args variable))))", + "(clause (head (compound (functor \"recdel\") (args (list (t variable))))) (compound (functor \"recdel\") (args variable)))", + "(clause (compound (functor \"intersect\") (args (list (h variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (head (compound (functor \"diff\") (args variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"del\") (args (args variable))) (compound (functor \"diff\") (args variable)))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"recdel\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"recdel\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args (list (t variable)))))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"delete\") (args (args variable))))", + "(clause (head (compound (functor \"recdel\") (args \"[]\" (args (args variable))))))", + "(clause (compound (functor \"member\") (args variable)) (compound (functor \"delete\") (args variable)))", + "(clause (head (compound (functor \"del\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args (args (list (h variable))))))) (compound (functor \"intersect\") (args (list (h variable)))))", + "(clause (head (compound (functor \"recdel\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"recdel\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"\\+\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (head (compound (functor \"recdel\") (args \"[]\"))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"diff\") (args variable)))", + "(clause (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"recdel\") (args (args (args variable))))) (compound (functor \"recdel\") (args (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args (args (list (h variable))))))) (compound (functor \"diff\") (args (args (args variable)))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"recdel\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (compound (functor \"union\") (args variable)))", + "(clause (compound (functor \"diff\") (args (args variable))) (compound (functor \"member\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"diff2\") (args (args variable)))) (compound (functor \"diff2\") (args (args variable))))", + "(clause (compound (functor \"diff\") (args variable)) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args variable))))", + "(clause (compound (functor \"intersect\") (args variable)) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"recdel\") (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"\\+\") (args (compound (functor \"memb\") (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"diff2\") (args (list (t variable))))) (compound (functor \"diff2\") (args variable)))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args variable (args variable))))))" + ], + "distribution": [ + 43, + 0 + ], + "quality": 0.9538283009756654 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"diff\") (args variable))) (compound (functor \"intersect\") (args variable)))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8921605663515302 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args variable)))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 2, + 29 + ], + "quality": 0.8058998834564192 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"diff\") (args (args variable))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 0, + 18 + ], + "quality": 0.8026373362364385 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (list (t variable))))) (compound (functor \"diff\") (args (args variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7709101555703018 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args (args variable))))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7709101555703018 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"diff\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (compound (functor \"diff\") (args (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"diff\") (args (args (args variable)))))" + ], + "distribution": [ + 5, + 38 + ], + "quality": 0.7687665812906903 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"diff\") (args (args variable (args \"[]\"))))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"diff\") (args (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))" + ], + "distribution": [ + 3, + 28 + ], + "quality": 0.7436503702080678 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args variable)) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7416353483923056 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop \"=\" variable))" + ], + "distribution": [ + 4, + 29 + ], + "quality": 0.7367136645174549 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args variable)))))", + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (compound (functor \"diff\") (args (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))" + ], + "distribution": [ + 7, + 38 + ], + "quality": 0.7349915900375226 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (args (args variable))))) (compound (functor \"diff\") (args (args (args (list (t variable)))))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6641015019994071 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"diff\") (args (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.6641015019994071 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"diff\") (args (list (h variable))))) (compound (functor \"count\") (args variable)))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.5616708435793863 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sets/intersect_3/bugs.json b/prolog/problems/sets/intersect_3/bugs.json new file mode 100644 index 0000000..0ebb830 --- /dev/null +++ b/prolog/problems/sets/intersect_3/bugs.json @@ -0,0 +1,496 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (t variable))))) (compound (functor \"intersect\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"intersect\") (args \"[]\"))))", + "(clause (head (compound (functor \"intersect\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args variable (args \"[]\"))))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (t variable))))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"intersect\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"intersect\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))))", + "(clause (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args variable))))", + "(clause (head (compound (functor \"intersect\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"intersect\") (args variable (args (args \"[]\"))))))", + "(clause (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"member\") (args variable)))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (compound (functor \"member\") (args variable)))", + "(clause (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args variable (args variable))))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args \"[]\" (args \"[]\")))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args variable))) (compound (functor \"intersect\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (t variable)))))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"intersect\") (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (compound (functor \"member\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" variable))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"intersect\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))))", + "(clause (compound (functor \"memb\") (args variable)) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"count\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"intersect\") (args (list (t variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (binop variable \"is\"))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"memb\") (args variable)))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (binop \"is\" variable))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"memb\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"notmemb\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"intersection\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (list (t variable))))) (compound (functor \"intersection\") (args variable)))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (compound (functor \"count\") (args (args variable))))", + "(clause (compound (functor \"count\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (unop \\+ (compound (functor \"member\") (args variable))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"del\") (args variable)) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"intersect\") (args variable)))", + "(clause (compound (functor \"intersect\") (args variable)) (compound (functor \"memb\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"count\") (args (args variable))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"pobrisi\") (args (list (t variable))))) (compound (functor \"pobrisi\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args variable))) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (compound (functor \"notmemb\") (args (args variable))))", + "(clause (compound (functor \"member\") (args variable)) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (t variable))))))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"pobrisi\") (args (args variable)))) (compound (functor \"pobrisi\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"intersect\") (args (args (args (list (h variable)))))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"intersect\") (args (args (args (list (h variable)))))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"intersect\") (args (args (args (list (t variable)))))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (t variable))))))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"\\+\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (head (compound (functor \"intersection\") (args (args variable (args \"[]\"))))))", + "(clause (head (compound (functor \"intersection\") (args (args variable)))))", + "(clause (head (compound (functor \"intersection\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (head (compound (functor \"build\") (args (args (args (args variable)))))) (compound (functor \"build\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"build\") (args (args variable)))) (compound (functor \"build\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"not\") (args (compound (functor \"member\") (args variable)))))", + "(clause (head (compound (functor \"intersection\") (args \"[]\"))))", + "(clause (binop variable \"=\" \"0\"))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"intersection\") (args (list (t variable))))) (compound (functor \"intersection\") (args variable)))", + "(clause (head (compound (functor \"build\") (args (list (t variable))))) (compound (functor \"build\") (args variable)))", + "(clause (binop (list (h variable)) \"=\") (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"intersection\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"intersection\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"intersection\") (args (args variable)))) (compound (functor \"intersection\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"member\") (args (args variable))))))", + "(clause (binop (list (h variable)) \"=\") (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (list (t variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop \"=\" variable) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"del\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (t variable))))))) (compound (functor \"intersection\") (args (args (args variable)))))", + "(clause (binop \"=\" \"0\"))", + "(clause (compound (functor \"\\+\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (list (h variable)) (args \"[]\"))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"build\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"build\") (args (args variable))))", + "(clause (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"build\") (args variable (args (args \"[]\")))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args \"[]\"))))", + "(clause (head (compound (functor \"build\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"build\") (args \"[]\" (args (args (args variable)))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args variable))) (compound (functor \"build\") (args variable)))", + "(clause (compound (functor \"build\") (args (args (args \"[]\" (args variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args (list (t variable))))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \">\"))", + "(clause (head (compound (functor \"pobrisi\") (args (list (t variable))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"intersec\") (args (args variable))))", + "(clause (head (compound (functor \"pobrisi\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"notmemb\") (args (args variable))))", + "(clause (binop variable \">\" \"0\"))", + "(clause (compound (functor \"conc\") (args (args \"[]\" (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"pobrisi\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"build\") (args (args (args (args variable))))))", + "(clause (compound (functor \"build\") (args (args (args \"[]\")))))", + "(clause (binop \">\" \"0\"))", + "(clause (compound (functor \"build\") (args (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"intersect\") (args (list (t variable))))) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"build\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"del\") (args variable)) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"pobrisi\") (args \"[]\"))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"pobrisi\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"build\") (args \"[]\"))))", + "(clause (head (compound (functor \"pobrisi\") (args \"[]\" (args \"[]\")))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"intersection\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"pobrisi\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args variable (args (args variable))))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable)) (args (args \"[]\"))))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (t variable))))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"build\") (args \"[]\" (args variable)))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (compound (functor \"insert\") (args (args variable))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (compound (functor \"intersect\") (args (args variable))) (compound (functor \"not\") (args (compound (functor \"member\") (args (args variable))))))", + "(clause (head (compound (functor \"intersect1\") (args (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"member\") (args (args variable))))", + "(clause (head (compound (functor \"build\") (args (args variable)))))", + "(clause (head (compound (functor \"pobrisi\") (args (list (h variable))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (compound (functor \"del\") (args (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"build\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"\\+\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (head (compound (functor \"pobrisi\") (args (list (t variable))))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"count\") (args (args (args variable)))))", + "(clause (head (compound (functor \"build\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (compound (functor \"memb\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"build\") (args (args (args (list (t variable))))))) (compound (functor \"build\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (list (t variable))))) (compound (functor \"intersetct\") (args variable)))", + "(clause (head (compound (functor \"intersect1\") (args (args variable (args \"[]\"))))))", + "(clause (compound (functor \"memb\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"intersect1\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"intersect\") (args \"[]\" (args (list (h variable)))))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"intersect1\") (args \"[]\"))))", + "(clause (head (compound (functor \"build\") (args (args (args (list (h variable))))))) (compound (functor \"memb\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"intersection\") (args (args variable))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"intersect1\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (t variable)))))) (compound (functor \"notmemb\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"intersetct\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (list (h variable)))))) (compound (functor \"notmemb\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"build\") (args (args (args variable (args variable)))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"intersect1\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"pobrisi\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"intersetct\") (args (args variable))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"intersect\") (args (args variable (args variable))))))" + ], + "distribution": [ + 54, + 0 + ], + "quality": 0.9536493044976051 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args variable (args variable))))))" + ], + "distribution": [ + 56, + 1 + ], + "quality": 0.94502632136353 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args \"[]\" (args (args variable))))))" + ], + "distribution": [ + 64, + 3 + ], + "quality": 0.9188356133165689 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.9088628473642169 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (list (t variable))))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8805191235366469 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args (args variable))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8721772200374108 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"intersect\") (args (args (args variable)))) (binop variable \"=\"))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8519584559528689 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (binop variable \"is\"))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8519584559528689 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8519584559528689 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (compound (functor \"notmemb\") (args variable)))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8519584559528689 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args variable (args \"[]\"))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (t variable))))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (list (h variable))))) (unop \\+ (compound (functor \"memb\") (args variable))))" + ], + "distribution": [ + 0, + 27 + ], + "quality": 0.836481670090156 + }, + { + "class": false, + "condition": [ + "(clause (unop \\+ (compound (functor \"memb\") (args variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8240032900302532 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=\" (list (t variable))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8240032900302532 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"memb\") (args variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8062486732037915 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8062486732037915 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7630467985553794 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args variable))) (compound (functor \"union\") (args variable)))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7630467985553794 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (compound (functor \"del\") (args variable)))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7324659262473096 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"intersect\") (args (args (args (list (h variable)))))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7324659262473096 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args \"[]\"))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (h variable))))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))" + ], + "distribution": [ + 3, + 27 + ], + "quality": 0.7025571711035932 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"intersect\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"intersect\") (args (args (args variable))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args (args (list (t variable))))))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"intersect\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))" + ], + "distribution": [ + 5, + 28 + ], + "quality": 0.6709971126729953 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sets/is_superset_2/bugs.json b/prolog/problems/sets/is_superset_2/bugs.json new file mode 100644 index 0000000..25a6a80 --- /dev/null +++ b/prolog/problems/sets/is_superset_2/bugs.json @@ -0,0 +1,311 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"is_superset\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"is_superset\") (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"is_superset\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (t variable)))))) (compound (functor \"is_superset\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"is_superset\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args \"[]\"))))", + "(clause (head (compound (functor \"is_superset\") (args (list (t variable))))) (compound (functor \"is_superset\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"is_superset\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))))", + "(clause (head (compound (functor \"is_superset\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"member\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"intersect\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (h variable)))))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args \"[]\" (args \"[]\")))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"is_superset\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"is_superset\") (args variable)) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"is_subset\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"is_superset\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"is_subset\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (compound (functor \"intersect\") (args (args variable (args variable)))))", + "(clause (compound (functor \"is_superset\") (args (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (h variable)))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args variable (args variable)))))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"is_superset\") (args (list (h variable))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"permute\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"is_superset\") (args (list (h variable))))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"is_superset\") (args (list (t variable))))))", + "(clause (head (compound (functor \"is_superset\") (args (list (h variable))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"is_superset\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (list (h variable))))))", + "(clause (compound (functor \"is_superset\") (args variable)))", + "(clause (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"is_superset\") (args (args variable))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (unop \\+ (compound (functor \"del\") (args (args (args variable))))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"is_superset\") (args variable)) (compound (functor \"member\") (args (args variable))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \">\"))", + "(clause (binop variable \">\" \"0\"))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"permute\") (args (args variable))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"is_superset\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"is_supetset\") (args variable))) (compound (functor \"is_superset\") (args variable)))", + "(clause (head (compound (functor \"is_supetset\") (args (args (list (t variable)))))) (compound (functor \"is_superset\") (args (args variable))))", + "(clause (binop \">\" \"0\"))", + "(clause (compound (functor \"is_superset\") (args variable)) (compound (functor \"memb\") (args variable)))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args (args variable)))))" + ], + "distribution": [ + 44, + 0 + ], + "quality": 0.9573148012450367 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args \"[]\" (args variable)))))" + ], + "distribution": [ + 42, + 0 + ], + "quality": 0.9551840608458025 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args \"[]\"))))" + ], + "distribution": [ + 77, + 2 + ], + "quality": 0.9489556270523528 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (t variable)))))) (compound (functor \"is_superset\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 5, + 130 + ], + "quality": 0.9441676011815278 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args (args \"[]\")))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"is_superset\") (args variable)))" + ], + "distribution": [ + 0, + 28 + ], + "quality": 0.920769681601247 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"is_superset\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 9, + 132 + ], + "quality": 0.9170297657688938 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 11, + 133 + ], + "quality": 0.9065030379779777 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"is_subset\") (args (args variable))))" + ], + "distribution": [ + 0, + 18 + ], + "quality": 0.894789570952922 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"is_superset\") (args (args variable))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.894467708395349 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"is_superset\") (args variable))) (compound (functor \"is_superset\") (args variable)))", + "(clause (head (compound (functor \"is_superset\") (args (args (list (t variable)))))) (compound (functor \"is_superset\") (args (args variable))))" + ], + "distribution": [ + 19, + 165 + ], + "quality": 0.8824079410499159 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"intersect\") (args (args variable (args variable)))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8650267548667329 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"is_superset\") (args (args variable))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8650267548667329 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.7907865618907618 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"intersect\") (args (args variable))))", + "(clause (head (compound (functor \"is_superset\") (args (args \"[]\")))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7789503302060591 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args (list (t variable))))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7664689004747853 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7664689004747853 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args (list (h variable))))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.733244004247434 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_superset\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6922614505910474 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"is_superset\") (args (args variable))))" + ], + "distribution": [ + 0, + 5 + ], + "quality": 0.6497211701430571 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"is_superset\") (args variable)) (compound (functor \"memb\") (args variable)))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6482582581497028 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_supetset\") (args variable))) (compound (functor \"is_superset\") (args variable)))" + ], + "distribution": [ + 5, + 0 + ], + "quality": 0.6482582581497028 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sets/powerset_2/bugs.json b/prolog/problems/sets/powerset_2/bugs.json new file mode 100644 index 0000000..3b9a00b --- /dev/null +++ b/prolog/problems/sets/powerset_2/bugs.json @@ -0,0 +1,219 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"findall\") (args (args (args variable)))))", + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args variable))))))", + "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"subset\") (args (args variable)))))))", + "(clause (head (compound (functor \"powerset\") (args \"[]\"))))", + "(clause (head (compound (functor \"powerset\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"powerset\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"powerset\") (args (list (t variable))))) (compound (functor \"powerset\") (args variable)))", + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"subset\") (args variable)))", + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"powerset\") (args (args variable)))))", + "(clause (head (compound (functor \"powerset\") (args (list (h variable))))))", + "(clause (head (compound (functor \"powerset\") (args (args (list (h \"[]\")))))))", + "(clause (head (compound (functor \"powerset\") (args \"[]\" (args (list (h \"[]\")))))))", + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"subset\") (args variable))))))", + "(clause (head (compound (functor \"powerset\") (args variable))))", + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args (args variable)))))))", + "(clause (head (compound (functor \"powerset\") (args (args (list (t variable)))))) (compound (functor \"powerset\") (args (args variable))))", + "(clause (head (compound (functor \"powerset\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (compound (functor \"findall\") (args variable)))", + "(clause (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args (args variable)))))))", + "(clause (head (compound (functor \"powerset\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"powerset\") (args (args variable))))", + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"subset\") (args (args variable))))", + "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"parent\") (args (args variable)))))))", + "(clause (compound (functor \"subset\") (args (args variable))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"powerset\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"findall\") (args variable)))", + "(clause (head (compound (functor \"powerset\") (args (list (t variable))))) (compound (functor \"findall\") (args (args (compound (functor \"parent\") (args variable))))))", + "(clause (compound (functor \"findall\") (args (args (args variable)))) (compound (functor \"powerset\") (args (args variable))))", + "(clause (head (compound (functor \"powerset\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"powerset\") (args (args (list (h variable)))))) (compound (functor \"subset\") (args (args variable))))", + "(clause (compound (functor \"findall\") (args (args (args variable)))))", + "(clause (compound (functor \"subset\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args variable))))", + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"subset\") (args (args variable))))", + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"powerset\") (args variable)))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"is_subset\") (args variable))))))", + "(clause (head (compound (functor \"powerset\") (args (list (h variable))))) (compound (functor \"poverset\") (args variable)))", + "(clause (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args (args variable))) (args variable)))))", + "(clause (head (compound (functor \"powerset\") (args (list (t variable))))) (compound (functor \"subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args variable)))))", + "(clause (compound (functor \"findall\") (args (args (compound (functor \"parent\") (args variable))))) (compound (functor \"powerset\") (args variable)))", + "(clause (head (compound (functor \"powerset\") (args \"[]\" (args (binop \"=\" \"[]\"))))))", + "(clause (head (compound (functor \"powerset\") (args (args (binop variable \"=\" \"[]\"))))))", + "(clause (compound (functor \"powerset\") (args (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"powerset\") (args (args (binop \"=\" \"[]\"))))))", + "(clause (compound (functor \"subset\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args (args variable)))))))", + "(clause (head (compound (functor \"powerset\") (args (args (binop variable \"=\"))))))", + "(clause (compound (functor \"poverset\") (args (args variable))))", + "(clause (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args variable))))))", + "(clause (head (compound (functor \"powerset\") (args \"[]\" (args (binop variable \"=\"))))))", + "(clause (head (compound (functor \"powerset\") (args (list (h variable))))) (binop \"=\" (list (h (list (h variable))))))", + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"bagof\") (args (args (args variable)))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args (args \"[]\")))))" + ], + "distribution": [ + 63, + 0 + ], + "quality": 0.9722307719109978 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"subset\") (args variable)))" + ], + "distribution": [ + 42, + 0 + ], + "quality": 0.9579742818233373 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args (list (h variable))))))" + ], + "distribution": [ + 29, + 0 + ], + "quality": 0.9371692827262958 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args (args variable)))))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9225892674725523 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"subset\") (args variable))))))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.9156912952121569 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"findall\") (args (args (args variable)))))", + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args variable))))))", + "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"subset\") (args (args variable)))))))" + ], + "distribution": [ + 10, + 126 + ], + "quality": 0.9100774293201361 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args \"[]\"))))" + ], + "distribution": [ + 98, + 8 + ], + "quality": 0.9037855287574943 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8876472062866424 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args variable))))))", + "(clause (compound (functor \"findall\") (args variable (args (compound (functor \"subset\") (args (args variable)))))))" + ], + "distribution": [ + 14, + 127 + ], + "quality": 0.8861444788109095 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"findall\") (args (args (compound (functor \"subset\") (args (args variable)))))))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8805979876108646 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"findall\") (args variable)))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8643582057994821 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args (args variable)))) (compound (functor \"subset\") (args (args variable))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.8224743773159554 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args variable))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.68848276586943 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"powerset\") (args variable))) (compound (functor \"subset\") (args (args variable))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.68848276586943 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sets/subset_2/bugs.json b/prolog/problems/sets/subset_2/bugs.json new file mode 100644 index 0000000..7d778ef --- /dev/null +++ b/prolog/problems/sets/subset_2/bugs.json @@ -0,0 +1,235 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"subset\") (args (list (t variable))))) (compound (functor \"subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"subset\") (args \"[]\"))))", + "(clause (head (compound (functor \"subset\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"subset\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))))", + "(clause (head (compound (functor \"subset\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"subset\") (args (args (list (t variable)))))) (compound (functor \"subset\") (args (args variable))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"subset\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"subset\") (args variable (args variable)))))", + "(clause (compound (functor \"subset\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"subset\") (args variable))))", + "(clause (compound (functor \"subset\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"subset\") (args variable (args \"[]\")))))", + "(clause (compound (functor \"subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"is_subset\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"is_subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args variable)))))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (compound (functor \"subset\") (args (args (list (h variable))))))", + "(clause (binop \"=\" variable))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"sublist\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"subset\") (args variable)) (compound (functor \"subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (list (t variable))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"subset\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"sublist\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args (args (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"diff\") (args (args (args variable)))))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"diff\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"subset\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"subset\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"is_subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"permute\") (args (args variable)))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"is_subset\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"permute\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args (list (t variable)))))) (compound (functor \"subset\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"subset\") (args \"[]\" (args variable)))))", + "(clause (compound (functor \"subset\") (args (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"subset\") (args (args variable))) (compound (functor \"subset\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"intersect\") (args (args (args variable)))))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"subset\") (args (args (list (h variable)))))) (compound (functor \"subset\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"sublist\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"diff\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"subset\") (args variable)))", + "(clause (compound (functor \"diff\") (args (args (args variable)))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"union\") (args variable (args variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"subset\") (args (args variable))))", + "(clause (compound (functor \"diff\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sublist\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"is_subset\") (args variable)) (binop \"=\" variable))", + "(clause (head (compound (functor \"subset\") (args (list (t variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"sublist\") (args (args variable))) (compound (functor \"is_subset\") (args variable)))", + "(clause (binop \"\\==\" variable) (compound (functor \"subset\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"permute\") (args variable))))", + "(clause (head (compound (functor \"subset\") (args (args (list (h variable)))))) (binop \"\\==\" variable))", + "(clause (compound (functor \"subset\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"sublist\") (args variable))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"subset\") (args variable)))", + "(clause (head (compound (functor \"subset\") (args (list (t (list (h variable))))))) (compound (functor \"subset\") (args variable)))", + "(clause (compound (functor \"diff\") (args (args (list (h variable) (t variable))))))", + "(clause (head (compound (functor \"subset\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"=\" variable) (compound (functor \"subset\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"subset\") (args (args (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (binop variable \"\\==\"))", + "(clause (binop \"=\" \"[]\"))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"is_subset\") (args variable)))" + ], + "distribution": [ + 35, + 0 + ], + "quality": 0.9472341826090998 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (args variable)))))" + ], + "distribution": [ + 30, + 0 + ], + "quality": 0.9360037505255554 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (compound (functor \"subset\") (args (args (list (h variable))))))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9310345353291157 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"subset\") (args (args variable))))", + "(clause (head (compound (functor \"subset\") (args (args (list (t variable)))))) (compound (functor \"subset\") (args (args variable))))" + ], + "distribution": [ + 4, + 80 + ], + "quality": 0.913934983699415 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"is_subset\") (args (args variable))))" + ], + "distribution": [ + 36, + 1 + ], + "quality": 0.9120822311563208 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"sublist\") (args variable)))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8860152000671373 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8860152000671373 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"subset\") (args variable)) (compound (functor \"subset\") (args variable)))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.876899140771019 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (args variable)))) (compound (functor \"subset\") (args (args (list (t variable))))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8459240264915695 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (args (list (h variable)))))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8313514577864842 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args (list (h variable))))) (binop \"=\" variable))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7970465980763067 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"subset\") (args variable))) (compound (functor \"is_subset\") (args variable)))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7726607891166476 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sets/union_3/bugs.json b/prolog/problems/sets/union_3/bugs.json new file mode 100644 index 0000000..497cac6 --- /dev/null +++ b/prolog/problems/sets/union_3/bugs.json @@ -0,0 +1,715 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"union\") (args (list (t variable))))) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args \"[]\"))))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"union\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (args \"[]\" (args variable))))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"union\") (args variable (args \"[]\")))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (t variable)))))) (compound (functor \"union\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (head (compound (functor \"union\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (head (compound (functor \"union\") (args variable (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"union\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args variable))) (compound (functor \"union\") (args variable)))", + "(clause (compound (functor \"union\") (args variable)))", + "(clause (binop \"=\" variable))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (binop \"=\" variable))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"union\") (args variable)))", + "(clause (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (list (h variable)))))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"union\") (args (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"union\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"union\") (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (t (list (t variable))))))", + "(clause (compound (functor \"member\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"=\" (list (h variable))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (list (t variable))))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"union\") (args (args variable (args variable)))))", + "(clause (compound (functor \"union\") (args \"[]\" (args variable))))", + "(clause (compound (functor \"union\") (args \"[]\" (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (list (h variable)) (args \"[]\")))))", + "(clause (compound (functor \"union\") (args \"[]\")))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"union\") (args (args variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"union\") (args (args \"[]\" (args (list (h variable))))))))", + "(clause (head (compound (functor \"union\") (args (args variable (args (list (t variable))))))))", + "(clause (head (compound (functor \"union\") (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"insert\") (args variable)))", + "(clause (unop \\+ (compound (functor \"member\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args variable))))", + "(clause (binop variable \"=\") (binop \"=\" (list (h variable))))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (binop variable \"=\") (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (binop variable \"\\=\"))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"union\") (args (args variable))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"union\") (args (args variable)))))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=\") (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))) (compound (functor \"union\") (args (args (args (list (t variable)))))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"=\") (binop \"=\" variable))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (compound (functor \"union\") (args (args (args (list (h variable)))))))", + "(clause (binop \"=\" (list (h variable))) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (list (t variable)))))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"append\") (args (args variable))))", + "(clause (compound (functor \"member\") (args (args variable))))", + "(clause (compound (functor \"union\") (args variable)) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"union\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))) (compound (functor \"union\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args variable)))", + "(clause (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"insert\") (args (args variable))))", + "(clause (binop variable \"=\") (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (binop \"\\=\" variable))", + "(clause (compound (functor \"union\") (args variable (args \"[]\"))))", + "(clause (compound (functor \"union\") (args (args \"[]\" (args variable)))))", + "(clause (compound (functor \"union\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (binop \"=\" variable) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (list (t variable)))))))", + "(clause (compound (functor \"union\") (args (args \"[]\"))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (compound (functor \"union\") (args (args (args (list (h variable)))))))", + "(clause (compound (functor \"memb\") (args variable)) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"union\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"notmemb\") (args variable)))", + "(clause (compound (functor \"count\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args variable))))", + "(clause (compound (functor \"memb\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"count\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (compound (functor \"memb\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"count\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"union\") (args (args (list (h variable))))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))) (compound (functor \"append\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"append\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"member\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args variable))))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (binop \"=\" variable))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"\\+\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (compound (functor \"count\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"count\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"append\") (args (args variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (compound (functor \"insert\") (args (args variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"insert\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"union\") (args (args variable))))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"union\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"union\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"notmemb\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"union\") (args (list (h variable)) (args (args \"[]\"))))))", + "(clause (compound (functor \"\\+\") (args (compound (functor \"memb\") (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union\") (args (list (t \"[]\")) (args \"[]\")))))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"union\") (args (list (t \"[]\")) (args (args (list (h variable))))))))", + "(clause (compound (functor \"notmemb\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)) (args (list (t (list (h variable))))))))))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args (args variable))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"union\") (args variable)))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"union\") (args variable (args (args \"[]\"))))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"count\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"\\+\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args (args (args (list (t variable)))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"union\") (args variable)) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"member\") (args (args variable))))", + "(clause (compound (functor \"memb\") (args variable)) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"\\+\") (args (compound (functor \"memb\") (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (compound (functor \"del\") (args variable)) (compound (functor \"insert\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"\\+\") (args (compound (functor \"memb\") (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"append\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"\\=\" variable))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"append\") (args (list (h variable)))))", + "(clause (compound (functor \"\\+\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (list (t \"[]\")) (args (list (h variable))))))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"\\=\"))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (head (compound (functor \"uni\") (args (args (args (list (h variable))))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args (list (t variable))))))))", + "(clause (compound (functor \"union\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t (list (t variable))))))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (compound (functor \"union\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"union\") (args (args (list (h variable))))))", + "(clause (compound (functor \"union\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"insert\") (args (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))) (compound (functor \"insert\") (args variable)))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (binop variable \">\" \"0\"))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"uninon\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable) (t \"[]\"))))))))", + "(clause (binop \">\" \"0\"))", + "(clause (binop \"\\=\" variable) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (list (t variable)))))) (compound (functor \"union\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"union\") (args (list (t variable))))) (compound (functor \"uninon\") (args variable)))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"union\") (args (args variable (args \"[]\"))))))", + "(clause (compound (functor \"union\") (args (args variable))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (compound (functor \"member\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"member\") (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (binop variable \"is\"))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t \"[]\"))))))))", + "(clause (binop variable \"\\=\") (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \">\"))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=:=\" \"0\"))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (compound (functor \"member\") (args variable)))", + "(clause (compound (functor \"union\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args \"[]\" (args variable))))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"del\") (args (args variable))))", + "(clause (binop \"\\=\" variable) (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"union\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union_cleanup\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args \"[]\" (args (args variable)))))", + "(clause (compound (functor \"union\") (args (args variable))) (compound (functor \"member\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (unop \\+ (compound (functor \"member\") (args variable))))", + "(clause (binop \"=:=\" \"0\"))", + "(clause (head (compound (functor \"union\") (args variable))) (compound (functor \"count\") (args (args variable))))", + "(clause (binop variable \"=\") (compound (functor \"union\") (args variable)))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \"=:=\"))", + "(clause (compound (functor \"del\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"union_cleanup\") (args (list (h variable))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t (list (t variable))))))))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (compound (functor \"conc\") (args \"[]\")))", + "(clause (binop variable \"\\=\") (unop \\+ (compound (functor \"memb\") (args variable))))", + "(clause (head (compound (functor \"union_cleanup\") (args (list (t variable))))) (compound (functor \"del\") (args (args variable))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (binop variable \"\\=\"))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (t variable)))))) (compound (functor \"union\") (args variable)))", + "(clause (binop \"\\=\" variable) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \"<\"))", + "(clause (binop variable \"=\") (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"notmemb\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (binop variable \"=:=\"))", + "(clause (binop \"\\=\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"memb\") (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"\\+\") (args (compound (functor \"memb\") (args (args variable))))))", + "(clause (compound (functor \"del\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"union_cleanup\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"union\") (args variable (args variable)))))", + "(clause (head (compound (functor \"memb\") (args variable))) (compound (functor \"memb\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args (list (t variable)))))) (compound (functor \"memb\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"union\") (args (args variable))))", + "(clause (compound (functor \"union\") (args variable)) (compound (functor \"union\") (args variable)))", + "(clause (head (compound (functor \"union\") (args variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args variable))) (compound (functor \"union\") (args (list (h variable)))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"union\") (args (list (t variable)))))", + "(clause (head (compound (functor \"union\") (args (args (list (t variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"union\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"del\") (args (args (args variable)))))", + "(clause (head (compound (functor \"memb\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (compound (functor \"notmemb\") (args variable)))", + "(clause (unop \\+ (compound (functor \"member\") (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"unoion\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))) (unop \\+ (compound (functor \"member\") (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"unionunion\") (args (list (t variable))))) (compound (functor \"union\") (args variable)))", + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"notmemb\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args variable (args (args variable)))))", + "(clause (head (compound (functor \"unionunion\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (compound (functor \"not\") (args (compound (functor \"member\") (args (args variable))))) (compound (functor \"union\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"insert\") (args variable)))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args (list (t variable)))))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"unoion\") (args (list (h variable))))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (unop \\+ (compound (functor \"memb\") (args (args (args variable))))))", + "(clause (compound (functor \"count\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"count\") (args (args variable))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (args variable))))))" + ], + "distribution": [ + 78, + 0 + ], + "quality": 0.9743051886197767 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"union\") (args (args (args (list (h variable)))))))" + ], + "distribution": [ + 56, + 0 + ], + "quality": 0.9613377811067118 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"union\") (args (args (args variable)))))" + ], + "distribution": [ + 47, + 0 + ], + "quality": 0.9522807311531841 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (compound (functor \"memb\") (args variable)))" + ], + "distribution": [ + 44, + 0 + ], + "quality": 0.9481387094716355 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (list (t variable))))))" + ], + "distribution": [ + 40, + 0 + ], + "quality": 0.9414008279236681 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"union\") (args (args (args variable)))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9023069490370251 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"union\") (args (args variable (args variable)))))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.9023069490370251 + }, + { + "class": false, + "condition": [ + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args (args (args variable)))))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.8970365748064876 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args variable))))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.8970365748064876 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args variable)))))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.8773248269435879 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (unop \\+ (compound (functor \"member\") (args variable))))" + ], + "distribution": [ + 0, + 22 + ], + "quality": 0.8585955426961931 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (list (h variable)) (args (list (h variable)))))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8514878405900151 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))) (compound (functor \"union\") (args (args variable))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.839798708765886 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8185777305695742 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8185777305695742 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"insert\") (args (args variable))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8185777305695742 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"member\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))" + ], + "distribution": [ + 1, + 22 + ], + "quality": 0.7856499438411576 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"member\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (unop \\+ (compound (functor \"member\") (args (args variable)))))" + ], + "distribution": [ + 1, + 24 + ], + "quality": 0.7825686659531135 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"member\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (unop \\+ (compound (functor \"member\") (args variable))))" + ], + "distribution": [ + 2, + 24 + ], + "quality": 0.764440174267653 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))" + ], + "distribution": [ + 8, + 32 + ], + "quality": 0.660710251009848 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))" + ], + "distribution": [ + 13, + 34 + ], + "quality": 0.6100442399859483 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args (list (t variable))))))) (compound (functor \"union\") (args (args (args variable)))))", + "(clause (unop \\+ (compound (functor \"memb\") (args (args variable)))) (compound (functor \"union\") (args (args variable))))" + ], + "distribution": [ + 8, + 27 + ], + "quality": 0.6014604679650691 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args (args (list (h variable))))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))" + ], + "distribution": [ + 0, + 8 + ], + "quality": 0.5894094385220676 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 1, + 12 + ], + "quality": 0.587592265527996 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args \"[]\" (args (args variable))))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (unop \\+ (compound (functor \"memb\") (args (args variable)))))", + "(clause (head (compound (functor \"union\") (args (args (args variable))))) (compound (functor \"union\") (args (args (args variable)))))" + ], + "distribution": [ + 14, + 33 + ], + "quality": 0.563324881885194 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"union\") (args (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (args \"[]\" (args variable))))))" + ], + "distribution": [ + 0, + 6 + ], + "quality": 0.4387079178467952 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args \"[]\" (args variable)))))", + "(clause (compound (functor \"count\") (args variable)) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 0, + 6 + ], + "quality": 0.4387079178467952 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"union\") (args (args variable))))", + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"not\") (args (compound (functor \"memb\") (args variable)))))" + ], + "distribution": [ + 3, + 10 + ], + "quality": 0.42571841169817115 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (unop \\+ (compound (functor \"memb\") (args variable))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 6, + 11 + ], + "quality": 0.31611319951867 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"union\") (args (list (h variable))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"union\") (args (args variable)))) (compound (functor \"not\") (args (compound (functor \"memb\") (args (args variable))))))" + ], + "distribution": [ + 6, + 11 + ], + "quality": 0.31611319951867 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sorting/is_sorted_1/bugs.json b/prolog/problems/sorting/is_sorted_1/bugs.json new file mode 100644 index 0000000..b225a78 --- /dev/null +++ b/prolog/problems/sorting/is_sorted_1/bugs.json @@ -0,0 +1,287 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))))", + "(clause (head (compound (functor \"is_sorted\") (args \"[]\"))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (compound (functor \"is_sorted\") (args (list (t variable)))))", + "(clause (binop \"=<\" variable) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"<\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t variable))))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"is_sorted\") (args variable))) (binop variable \"=\"))", + "(clause (binop variable \"=\") (compound (functor \"is_sorted\") (args variable)))", + "(clause (binop \"<\" variable) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=<\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"<\" variable))", + "(clause (binop \"<\" variable))", + "(clause (compound (functor \"is_sorted\") (args (list (h variable)))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable) (t \"[]\"))))))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable) (t (list (t \"[]\"))))))))", + "(clause (binop \"=<\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (binop variable \"==\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \">=\"))", + "(clause (binop \"==\" (list (h variable))))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop variable \"==\"))", + "(clause (head (compound (functor \"is_sorted\") (args variable))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop variable \">=\"))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (binop variable \"\\==\"))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop variable \"\\==\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (binop \"<\" variable) (binop variable \"<\"))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop \"<\" variable))", + "(clause (binop variable \"==\"))", + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop variable \"<\"))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (binop \"<\" variable))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop variable \"=\"))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">=\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"is_sorted\") (args (binop variable \"|\"))))", + "(clause (binop variable \"<\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (compound (functor \"is_sorted\") (args (binop \"|\" variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"is_sorted\") (args (list (t variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"=\"))", + "(clause (binop variable \"==\") (binop \"<\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \">=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"<\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \">\"))", + "(clause (binop \"is\" (binop \"+\" \"1\")))", + "(clause (compound (functor \"min\") (args (list (h variable)) (args variable))))", + "(clause (binop variable \"is\" (binop \"+\" \"1\")))", + "(clause (binop \"is\" (binop variable \"+\" \"1\")))", + "(clause (binop \"=<\" variable) (compound (functor \"is_sorted\") (args (binop variable \"|\"))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))))", + "(clause (compound (functor \"tab\") (args \"2\")))", + "(clause (compound (functor \"min\") (args (list (t variable)))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop \">\" variable))", + "(clause (binop \">=\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"==\"))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))) (binop \"=<\" variable))", + "(clause (binop \">=\" variable) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop variable \"=<\"))", + "(clause (binop variable \"==\") (binop \"=<\" variable))", + "(clause (binop \"=<\" variable) (binop \"=<\" variable))", + "(clause (binop variable \"=<\") (binop variable \"=<\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop \"==\" variable))", + "(clause (binop variable \">=\") (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop \"=<\" variable))", + "(clause (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"printlist\") (args (args (args variable))))) (binop \"is\" (binop variable \"+\")))", + "(clause (head (compound (functor \"printlist\") (args (args variable)))) (compound (functor \"printlist\") (args (args variable))))", + "(clause (head (compound (functor \"printlist\") (args (list (h variable))))) (compound (functor \"write\") (args variable)))", + "(clause (binop \"=<\" variable) (binop variable \"=<\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"printlist\") (args (list (t variable))))) (compound (functor \"printlist\") (args variable)))", + "(clause (compound (functor \"is_sorted\") (args (list (h variable)))) (binop \"<\" variable))", + "(clause (binop variable \"is\") (compound (functor \"printlist\") (args (args (args variable)))))", + "(clause (binop variable \">=\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t variable))))) (compound (functor \"min\") (args (list (t variable)))))", + "(clause (binop variable \"=\") (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t variable))))) (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"is_sirted\") (args (list (t (list (h variable))))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (compound (functor \"min\") (args (list (h variable)))))", + "(clause (compound (functor \"is_sorted\") (args (list (t variable)))))", + "(clause (binop \">=\" variable) (compound (functor \"is_sorted_prev\") (args (args variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"<\" variable))", + "(clause (binop variable \"=\") (compound (functor \"is_sorted\") (args (list (t variable)))))", + "(clause (binop \"=<\" variable) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop variable \">\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args variable))) (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"is_sorted_prev\") (args (list (h variable))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"is_sorted_prev\") (args (list (h variable))))) (compound (functor \"is_sorted_prev\") (args (args variable))))", + "(clause (head (compound (functor \"is_sorted_prev\") (args (list (t variable))))) (compound (functor \"is_sorted_prev\") (args variable)))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t variable))))) (compound (functor \"is_sorted\") (args (list (t variable)))))", + "(clause (compound (functor \"is_sorted\") (args (binop variable \"|\"))) (binop \"=<\" variable))", + "(clause (binop variable \"=\") (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"is_sorted_prev\") (args (args variable)))) (binop variable \">=\"))", + "(clause (binop variable \"=<\"))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (compound (functor \"is_sorted\") (args variable)))" + ], + "distribution": [ + 128, + 1 + ], + "quality": 0.9775613587613966 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"<\"))" + ], + "distribution": [ + 155, + 5 + ], + "quality": 0.9535087005106103 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))))", + "(clause (head (compound (functor \"is_sorted\") (args \"[]\"))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"is_sorted\") (args (list (h variable)))))" + ], + "distribution": [ + 7, + 127 + ], + "quality": 0.9372780608306315 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))))", + "(clause (head (compound (functor \"is_sorted\") (args \"[]\"))))", + "(clause (binop \"=<\" variable) (compound (functor \"is_sorted\") (args (list (h variable)))))" + ], + "distribution": [ + 6, + 119 + ], + "quality": 0.9279482952616421 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=<\" variable))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.898397072632486 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \">=\"))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8776592983980024 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args variable))))" + ], + "distribution": [ + 19, + 0 + ], + "quality": 0.8708864345755352 + }, + { + "class": false, + "condition": [ + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"is_sorted\") (args variable)))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8391288460195767 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"is_sorted\") (args (binop variable \"|\"))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8165427141681832 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))))", + "(clause (head (compound (functor \"is_sorted\") (args \"[]\"))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"is_sorted\") (args (list (h variable)))))" + ], + "distribution": [ + 37, + 134 + ], + "quality": 0.7647252790331621 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args \"[]\"))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t \"[]\"))))))" + ], + "distribution": [ + 2, + 20 + ], + "quality": 0.7537186004546292 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))))", + "(clause (head (compound (functor \"is_sorted\") (args \"[]\"))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 3, + 20 + ], + "quality": 0.6956803513785101 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))))", + "(clause (head (compound (functor \"is_sorted\") (args \"[]\"))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"=<\"))" + ], + "distribution": [ + 65, + 153 + ], + "quality": 0.6878219256560004 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sorting/isort_2/bugs.json b/prolog/problems/sorting/isort_2/bugs.json new file mode 100644 index 0000000..58236bc --- /dev/null +++ b/prolog/problems/sorting/isort_2/bugs.json @@ -0,0 +1,390 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args \"[]\"))))", + "(clause (head (compound (functor \"isort\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"isort\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"isort\") (args (args variable)))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (compound (functor \"isort\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"sins\") (args (args variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"isort\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"sins\") (args variable)))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"sins\") (args (args variable))) (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"sins\") (args (args variable))) (compound (functor \"isort\") (args (args variable))))", + "(clause (binop variable \"=<\"))", + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args variable))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"isort\") (args \"[]\" (args variable)))))", + "(clause (binop \"=<\" variable))", + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (binop variable \">\"))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args variable))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"isort\") (args (list (t \"[]\"))))))", + "(clause (compound (functor \"isort\") (args variable)) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (list (h variable))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (binop \">\" variable) (compound (functor \"sins\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"isort\") (args variable))) (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args variable (args variable)))))", + "(clause (head (compound (functor \"isort\") (args variable))))", + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop \"<\" variable))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"isort\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sins\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (h variable))))))) (compound (functor \"sins\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=<\" variable))", + "(clause (compound (functor \"min\") (args (args variable))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))))", + "(clause (head (compound (functor \"isort\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (h variable))))))) (binop \">\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \">\" variable))", + "(clause (head (compound (functor \"isort\") (args (args (list (t variable)))))) (compound (functor \"isort\") (args (args variable))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (binop variable \"=\") (compound (functor \"sins\") (args (args variable))))", + "(clause (compound (functor \"sins\") (args (args variable (args variable)))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"isort\") (args variable (args (args (list (h variable))))))))", + "(clause (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (compound (functor \"append\") (args (list (h variable)))))", + "(clause (compound (functor \"isort\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (t variable))))))) (compound (functor \"sins\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (t variable))))))) (compound (functor \"isort\") (args (list (t variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"isort\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"isort\") (args (args (list (h variable))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"isort\") (args (args (list (h variable))))) (binop \"=<\" variable))", + "(clause (binop \"=<\" variable) (compound (functor \"isort\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \">\"))", + "(clause (compound (functor \"min\") (args (args variable))) (compound (functor \"del\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args \"[]\" (args (list (h variable))))))))", + "(clause (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (h variable))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"isort\") (args (args (list (h variable))))) (compound (functor \"sins\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"isort\") (args variable))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (h variable))))))) (compound (functor \"isort\") (args (list (h variable)))))", + "(clause (compound (functor \"min\") (args variable)) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"isort\") (args variable))) (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args (list (t variable))))) (compound (functor \"sins\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args (list (h variable)))))", + "(clause (head (compound (functor \"isort\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"isort\") (args variable))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop variable \"<\"))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"==\"))", + "(clause (binop variable \"<\"))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop variable \"==\"))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"<\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"==\" variable))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sins\") (args (args variable (args (list (t variable))))))))", + "(clause (head (compound (functor \"isort\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (t variable))))))) (compound (functor \"isort\") (args variable)))", + "(clause (binop variable \"=\") (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args variable))) (binop \"=\" variable))", + "(clause (compound (functor \"min\") (args variable)) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (args variable (args variable))))))", + "(clause (compound (functor \"isort\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"isort\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (compound (functor \"append\") (args (args (args variable)))))", + "(clause (head (compound (functor \"isort\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (h variable)))) (args (list (h variable)))))))", + "(clause (head (compound (functor \"isort\") (args (args (list (h variable)))))) (compound (functor \"sins\") (args variable)))", + "(clause (binop \"=<\" variable) (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (compound (functor \"isort\") (args (list (h variable)))))", + "(clause (head (compound (functor \"isort\") (args (args \"[]\" (args (list (h variable))))))))", + "(clause (head (compound (functor \"isort\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"isort\") (args (args (list (h variable))))))", + "(clause (compound (functor \"isort\") (args (args \"[]\"))))", + "(clause (head (compound (functor \"isort\") (args (list (t (list (t variable)))) (args (list (t (list (t variable)))))))))", + "(clause (compound (functor \"isort\") (args (args (list (t variable))))) (compound (functor \"append\") (args (args (list (t variable))))))", + "(clause (compound (functor \"isort\") (args variable (args \"[]\"))))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop \"=\" variable))", + "(clause (compound (functor \"del\") (args variable)) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"append\") (args (list (h variable)))))", + "(clause (head (compound (functor \"isort\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (compound (functor \"isort\") (args (args (list (h variable))))) (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"isort\") (args (args (args (list (t variable))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (compound (functor \"append\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (binop variable \"=<\") (compound (functor \"append\") (args (list (h variable)))))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (args variable)))))" + ], + "distribution": [ + 77, + 0 + ], + "quality": 0.977740457880513 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"isort\") (args (args variable))))" + ], + "distribution": [ + 107, + 2 + ], + "quality": 0.9628255078061851 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sins\") (args (args (args variable)))) (compound (functor \"isort\") (args (args variable))))" + ], + "distribution": [ + 76, + 1 + ], + "quality": 0.9614393823148333 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 96, + 2 + ], + "quality": 0.9581534151826205 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 69, + 1 + ], + "quality": 0.9570281584881061 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sins\") (args (args variable))) (compound (functor \"isort\") (args (args variable))))" + ], + "distribution": [ + 42, + 0 + ], + "quality": 0.9554496636892917 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"isort\") (args (args variable))))" + ], + "distribution": [ + 38, + 0 + ], + "quality": 0.9506055100475281 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"isort\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 6, + 135 + ], + "quality": 0.9351795579638846 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 28, + 0 + ], + "quality": 0.9288796109922332 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"isort\") (args (args \"[]\")))))" + ], + "distribution": [ + 9, + 136 + ], + "quality": 0.91675494226811 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sins\") (args (args (args variable)))) (compound (functor \"isort\") (args variable)))" + ], + "distribution": [ + 49, + 2 + ], + "quality": 0.9130666008058437 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 14, + 146 + ], + "quality": 0.9048301949536517 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args \"[]\"))))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 12, + 139 + ], + "quality": 0.8990029777124932 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (h variable))))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8806649756764369 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (t variable))))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8064758915876264 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args variable (args \"[]\")))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7851253147291626 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (t (list (h variable))))))) (binop \">\" variable))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7851253147291626 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args (args variable)))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"isort\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args variable)))" + ], + "distribution": [ + 57, + 138 + ], + "quality": 0.689289791332637 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"isort\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args variable)))" + ], + "distribution": [ + 124, + 140 + ], + "quality": 0.518165990776647 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"isort\") (args (list (h variable))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"isort\") (args \"[]\"))))", + "(clause (head (compound (functor \"isort\") (args (list (t variable))))) (compound (functor \"isort\") (args variable)))" + ], + "distribution": [ + 133, + 144 + ], + "quality": 0.5064778166750439 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sorting/pivoting_4/bugs.json b/prolog/problems/sorting/pivoting_4/bugs.json new file mode 100644 index 0000000..c0e0772 --- /dev/null +++ b/prolog/problems/sorting/pivoting_4/bugs.json @@ -0,0 +1,614 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"pivoting\") (args variable))) (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t variable)))))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args \"[]\")))))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args \"[]\"))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\"))))))", + "(clause (binop variable \"=<\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\" (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \">\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \">\"))", + "(clause (binop \"=<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (binop \"=<\" variable) (compound (functor \"pivoting\") (args variable)))", + "(clause (binop \">\" variable) (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (args (list (h variable)))))))))", + "(clause (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \"=<\" variable))", + "(clause (binop variable \">\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop variable \"=<\"))", + "(clause (binop \"=\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \">\"))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \">\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args variable)))) (binop variable \"=\"))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (binop \">\" variable))", + "(clause (binop variable \">\"))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"pivoting\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop variable \"<\"))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop variable \">=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=<\"))", + "(clause (binop variable \">=\"))", + "(clause (binop \">=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable)) (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\" (args (args variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\" (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \">=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">\"))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"<\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \">=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (binop \"<\" variable))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop variable \">=\"))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t variable)))))))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop variable \"<\"))", + "(clause (binop \">=\" variable) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (binop variable \">=\") (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop variable \"=<\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop \"=<\" variable))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \">\") (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args (list (h variable)))))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=<\") (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args (list (h variable))))))))", + "(clause (binop \"<\" variable) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"<\") (compound (functor \"pivoting\") (args variable)))", + "(clause (binop variable \"<\") (binop \"=\" (list (h variable))))", + "(clause (binop variable \">=\") (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \">=\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=\"))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop variable \">\") (compound (functor \"pivoting\") (args variable)))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))))", + "(clause (binop variable \"=\") (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop variable \"=\") (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args (args variable)))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"pivoting\") (args (args (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable (args variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"<\"))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (list (t \"[]\")))))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"<\"))", + "(clause (binop variable \">\") (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop variable \">\") (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t variable)))))) (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"pivoting\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args (args (list (h variable)))))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \"<\"))", + "(clause (binop variable \"=<\") (compound (functor \"pivoting\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (list (h variable)))))))", + "(clause (binop variable \"=<\") (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args (list (t variable))))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (compound (functor \"pivoting\") (args (args (args (list (h variable)))))))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args (list (t variable)))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args (list (t variable))))))))", + "(clause (binop \">=\" variable) (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (compound (functor \"pivoting\") (args (args (args (args (list (h variable))))))))", + "(clause (binop variable \">\") (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivotintg\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"<\" variable) (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")) (args (args variable)))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop \"=\" variable))", + "(clause (compound (functor \"conc\") (args variable)) (binop variable \"=\"))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t variable)))))) (compound (functor \"divide\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args (args (args (args (list (h variable))))))))", + "(clause (binop \"=<\" variable) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop variable \"=\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args (args (list (t variable))))))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"memb\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \">=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")) (args variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (list (t variable)))))))", + "(clause (binop variable \">\") (binop \"=\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args variable (args \"[]\"))))))", + "(clause (head (compound (functor \"pivoting\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \"=<\") (binop \"=\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"memb\") (args variable)) (binop variable \"=<\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable (args \"[]\")))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")) (args (list (h variable))))))))", + "(clause (binop \"<\" variable) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop variable \">\") (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args variable (args (args variable)))))))", + "(clause (compound (functor \"insert\") (args variable)))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))))" + ], + "distribution": [ + 55, + 0 + ], + "quality": 0.9646038629778293 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))))" + ], + "distribution": [ + 46, + 0 + ], + "quality": 0.9565792405951599 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"=<\" variable))" + ], + "distribution": [ + 49, + 1 + ], + "quality": 0.9333575564076649 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \">=\" variable))" + ], + "distribution": [ + 30, + 0 + ], + "quality": 0.9281456277174943 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \">\" variable))" + ], + "distribution": [ + 42, + 1 + ], + "quality": 0.9196692919638001 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=<\"))" + ], + "distribution": [ + 2, + 70 + ], + "quality": 0.9141700985787253 + }, + { + "class": false, + "condition": [ + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.9054470973913306 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))" + ], + "distribution": [ + 3, + 71 + ], + "quality": 0.9010804032895451 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"<\" variable))" + ], + "distribution": [ + 22, + 0 + ], + "quality": 0.8967947967775677 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8833917794693875 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=<\"))" + ], + "distribution": [ + 5, + 71 + ], + "quality": 0.8733102042440354 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop \"=<\" variable))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8670331757192835 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8670331757192835 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args \"[]\"))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=<\"))" + ], + "distribution": [ + 6, + 71 + ], + "quality": 0.8607822782639075 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8565477971369478 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args variable (args (args (list (h variable))))))))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8565477971369478 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \">\"))" + ], + "distribution": [ + 8, + 72 + ], + "quality": 0.8386399910610023 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8311795304272034 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))" + ], + "distribution": [ + 9, + 71 + ], + "quality": 0.8246122931853285 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8175197680473467 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 14, + 0 + ], + "quality": 0.8175197680473467 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" variable))", + "(clause (binop variable \">\") (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"pivoting\") (args variable))))" + ], + "distribution": [ + 3, + 31 + ], + "quality": 0.7671090358537019 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7573443708477038 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (compound (functor \"pivoting\") (args (args (args (args (list (h variable))))))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7573443708477038 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args variable (args variable)))))))" + ], + "distribution": [ + 11, + 0 + ], + "quality": 0.7573443708477038 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \">\"))" + ], + "distribution": [ + 21, + 88 + ], + "quality": 0.7573339622994669 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))" + ], + "distribution": [ + 20, + 78 + ], + "quality": 0.7422111987664158 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \">\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))" + ], + "distribution": [ + 25, + 91 + ], + "quality": 0.7363563666930584 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))" + ], + "distribution": [ + 26, + 90 + ], + "quality": 0.7308834359619308 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 0, + 10 + ], + "quality": 0.6895233580702241 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"=<\" variable))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (binop variable \"=<\"))" + ], + "distribution": [ + 0, + 11 + ], + "quality": 0.6402754788380215 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">\"))" + ], + "distribution": [ + 1, + 10 + ], + "quality": 0.5782029185604409 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sorting/quick_sort_2/bugs.json b/prolog/problems/sorting/quick_sort_2/bugs.json new file mode 100644 index 0000000..1245417 --- /dev/null +++ b/prolog/problems/sorting/quick_sort_2/bugs.json @@ -0,0 +1,594 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quick_sort\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quick_sort\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args \"[]\"))))", + "(clause (head (compound (functor \"quick_sort\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"quick_sort\") (args \"[]\" (args \"[]\")))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (compound (functor \"pivoting\") (args (args (list (t variable))))))", + "(clause (binop variable \"=\"))", + "(clause (compound (functor \"pivoting\") (args variable (args (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))))", + "(clause (binop variable \">\"))", + "(clause (binop \">\" variable))", + "(clause (binop \"=\" variable))", + "(clause (binop variable \"=<\"))", + "(clause (binop \"=<\" variable))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"quick_sort\") (args variable))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"=\" \"[]\"))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t variable)))))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable) (t \"[]\"))))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (binop variable \">\"))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t (list (h variable))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t (list (h variable))))))) (binop \">\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"quick_sort\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (binop variable \">\") (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t (list (h variable))))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t (list (h variable))))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (binop \"=\" variable))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (binop variable \"=\") (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (args \"[]\"))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t (list (h variable))))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"quick_sort\") (args (args (list (h variable)))))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quicksort\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (args (list (t (list (h variable)))))))) (binop variable \"=\"))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"isort\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args (list (t \"[]\")))))))", + "(clause (binop variable \"<\"))", + "(clause (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quicksort\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable)) (args variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"isort\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \">\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (head (compound (functor \"conc\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\"))))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (args (list (h variable)))))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args variable)))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"conc\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args \"[]\")))))))", + "(clause (head (compound (functor \"conc\") (args \"[]\" (args (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \">\"))", + "(clause (binop variable \"=\") (compound (functor \"quick_sort\") (args variable)))", + "(clause (head (compound (functor \"conc\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args variable))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"quicksort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\" (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"pivoting\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args variable))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"append\") (args variable)))", + "(clause (compound (functor \"isort\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (args (list (h variable)))))) (compound (functor \"quick_sort\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args \"[]\" (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"isort\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))) (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"quick_sort\") (args variable)) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"quick_sort\") (args (list (h variable)))))", + "(clause (binop \"=<\" variable) (binop \"=\" variable))", + "(clause (binop variable \"=\") (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"<\"))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"isort\") (args (list (h variable)))))", + "(clause (binop variable \"=<\") (binop \"=\" variable))", + "(clause (compound (functor \"quicksort\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"concat\") (args (args (args variable)))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (binop variable \"=\"))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"quick_sort\") (args (list (h variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"is\" (binop (binop \"+\" variable) \"//\")))", + "(clause (binop \"==\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"<\"))", + "(clause (compound (functor \"min\") (args (list (t variable)))) (compound (functor \"max\") (args (list (t variable)))))", + "(clause (compound (functor \"min\") (args (list (h variable)))) (compound (functor \"max\") (args (list (h variable)))))", + "(clause (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \"=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args variable)))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")) (args \"[]\"))))))", + "(clause (head (compound (functor \"conc\") (args (args variable)))) (binop \"=\" variable))", + "(clause (compound (functor \"max\") (args (list (h variable)))) (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args (args \"[]\")))))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop variable \"<\"))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"concat\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable)) (args \"[]\")))))))", + "(clause (binop \"is\" (binop \"//\" \"2\")))", + "(clause (binop \"is\" (binop (binop variable \"+\") \"//\" \"2\")))", + "(clause (head (compound (functor \"shiftleft\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"conc\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"min\") (args (list (t variable)))) (compound (functor \"pivoting\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)) (args \"[]\"))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"min\") (args (list (h variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"max\") (args (list (h variable)))))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \">\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop \">\" variable))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"concat\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"concat\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (compound (functor \"min\") (args (list (t variable)))))", + "(clause (binop variable \"<\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")) (args (list (h variable))))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (compound (functor \"max\") (args (list (t variable)))))", + "(clause (compound (functor \"pivoting\") (args variable)) (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")) (args (args \"[]\")))))))", + "(clause (binop variable \"is\" (binop \"//\" \"2\")))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (t \"[]\")) (args (args (list (h variable)))))))))", + "(clause (compound (functor \"max\") (args (args variable))) (binop \"is\" (binop (binop variable \"+\") \"//\")))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"=\" variable))", + "(clause (compound (functor \"max\") (args (list (t variable)))) (compound (functor \"pivoting\") (args (args (list (t variable))))))", + "(clause (binop \"is\" (binop (binop \"+\" variable) \"//\" \"2\")))", + "(clause (head (compound (functor \"pivoting\") (args (args (args \"[]\" (args (list (h variable)))))))))", + "(clause (binop variable \"is\") (compound (functor \"pivoting\") (args variable)))", + "(clause (compound (functor \"min\") (args (list (h variable)))) (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"shiftleft\") (args (list (t variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop variable \">\"))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop \"=\" variable))", + "(clause (binop variable \">\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop \"<\" variable))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"quick_sort\") (args variable)) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"==\"))", + "(clause (compound (functor \"quicksort\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quick_sort\") (args (list (t variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (binop variable \"=\"))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"append\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"quick_sort\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop \"<\" variable))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"concat\") (args (args (list (t variable))))))", + "(clause (binop \">\" variable) (binop \"=\" variable))", + "(clause (head (compound (functor \"quick_sort\") (args variable))))", + "(clause (binop variable \">\") (binop \"=\" variable))", + "(clause (compound (functor \"last_elem\") (args (args variable))) (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (h variable)))))))) (binop variable \">\"))", + "(clause (head (compound (functor \"quick_sort\") (args (args (list (t variable)))))) (compound (functor \"quick_sort\") (args (args variable))))", + "(clause (binop \"==\" (list (t variable))))", + "(clause (head (compound (functor \"quicksort\") (args \"[]\" (args \"[]\")))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"append\") (args (args (list (t variable))))))", + "(clause (compound (functor \"last_elem\") (args variable)) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"quicksort\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (t variable))))))) (compound (functor \"pivoting\") (args (args (args variable)))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (args (list (t variable)))))))) (compound (functor \"pivoting\") (args (args (args (args variable))))))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"quick_sort\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t (list (h variable))))))) (compound (functor \"isort\") (args (list (t (list (h variable)))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (list (h variable)))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"conc\") (args (args variable (args variable))))))", + "(clause (head (compound (functor \"pivoting\") (args (args (args (list (h variable))))))) (binop variable \"=<\"))", + "(clause (binop \"=<\" variable) (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args variable (args variable)))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quick_sort\") (args (list (h variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"quicksort\") (args \"[]\"))))", + "(clause (head (compound (functor \"pivoting\") (args variable))) (binop \"=<\" variable))", + "(clause (compound (functor \"pivoting\") (args (args (list (t variable))))))", + "(clause (binop \">\" variable) (compound (functor \"pivoting\") (args variable)))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quick_sort\") (args variable)))" + ], + "distribution": [ + 90, + 0 + ], + "quality": 0.9764882155582799 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quick_sort\") (args variable)))" + ], + "distribution": [ + 87, + 0 + ], + "quality": 0.9755379758772118 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args (args (list (h variable))))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 75, + 0 + ], + "quality": 0.9708975117350563 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args (args (list (h variable))))))" + ], + "distribution": [ + 73, + 0 + ], + "quality": 0.9699604893023981 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"quick_sort\") (args (args variable))))" + ], + "distribution": [ + 53, + 0 + ], + "quality": 0.9674066980469899 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args (args (list (h variable))))))" + ], + "distribution": [ + 104, + 2 + ], + "quality": 0.9626511754052124 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))))" + ], + "distribution": [ + 44, + 0 + ], + "quality": 0.9598388529668453 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args (args \"[]\")))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))" + ], + "distribution": [ + 2, + 120 + ], + "quality": 0.9580012423061603 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"pivoting\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 3, + 121 + ], + "quality": 0.9500584085841223 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args (args \"[]\")))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quick_sort\") (args variable)))" + ], + "distribution": [ + 8, + 147 + ], + "quality": 0.9403859611666608 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quick_sort\") (args variable)))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))" + ], + "distribution": [ + 5, + 125 + ], + "quality": 0.9363611655439407 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quick_sort\") (args variable)))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args \"[]\"))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))" + ], + "distribution": [ + 6, + 121 + ], + "quality": 0.9262882532102532 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 25, + 0 + ], + "quality": 0.9240643023231885 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 49, + 2 + ], + "quality": 0.916880152068617 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args (args \"[]\")))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quick_sort\") (args variable)))" + ], + "distribution": [ + 13, + 152 + ], + "quality": 0.9140155443303338 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args variable))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quick_sort\") (args variable)))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.8951314130170517 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args variable)))) (compound (functor \"quick_sort\") (args variable)))", + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 11, + 121 + ], + "quality": 0.8897339920225685 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args variable))) (compound (functor \"pivoting\") (args (args variable))))", + "(clause (head (compound (functor \"quick_sort\") (args \"[]\"))))" + ], + "distribution": [ + 24, + 0 + ], + "quality": 0.882954713838925 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quicksort\") (args variable)))" + ], + "distribution": [ + 16, + 0 + ], + "quality": 0.8754484264833706 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (t variable))))))" + ], + "distribution": [ + 15, + 0 + ], + "quality": 0.8654973710066844 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable)) (args variable)))))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8416671288774003 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (binop \"=\" variable))" + ], + "distribution": [ + 13, + 0 + ], + "quality": 0.8416671288774003 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8264014440638541 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"quick_sort\") (args (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"pivoting\") (args variable)) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"pivoting\") (args (args (args (args variable))))) (compound (functor \"quick_sort\") (args variable)))" + ], + "distribution": [ + 29, + 154 + ], + "quality": 0.8243899448937496 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"quick_sort\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"conc\") (args (args (list (h variable))))))" + ], + "distribution": [ + 30, + 148 + ], + "quality": 0.8142204836346375 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (list (h variable))))) (compound (functor \"conc\") (args (list (h variable)))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7882138095581407 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"quick_sort\") (args (args (list (h variable)))))) (compound (functor \"quick_sort\") (args (args variable))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.7882138095581407 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args (args (args variable)))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.760358883852663 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"pivoting\") (args (args (args variable)))))" + ], + "distribution": [ + 9, + 0 + ], + "quality": 0.760358883852663 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sorting/sins_3/bugs.json b/prolog/problems/sorting/sins_3/bugs.json new file mode 100644 index 0000000..4be67b9 --- /dev/null +++ b/prolog/problems/sorting/sins_3/bugs.json @@ -0,0 +1,900 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sins\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"=<\"))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args \"[]\" (args (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \">\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=<\" variable))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"=<\"))", + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop \"=<\" variable))", + "(clause (binop variable \">\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)) (args (list (h variable))))))))", + "(clause (binop \">\" variable))", + "(clause (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)) (args (list (t (list (h variable))))))))))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)) (args (list (t (list (t variable))))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop variable \"=<\"))", + "(clause (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args variable)))) (binop variable \"=\"))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \">=\"))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"<\"))", + "(clause (head (compound (functor \"sins\") (args (args \"[]\" (args variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"sins\") (args (args variable))))", + "(clause (binop variable \"<\"))", + "(clause (binop variable \">=\"))", + "(clause (binop \"<\" variable))", + "(clause (binop variable \">=\") (compound (functor \"sins\") (args variable)))", + "(clause (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"sins\") (args (args variable))))", + "(clause (binop \">=\" variable))", + "(clause (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \">=\" variable))", + "(clause (binop \"=\" (list (h variable))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args variable (args (args variable))))))", + "(clause (head (compound (functor \"sins\") (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (t (list (h variable))))))))))", + "(clause (binop variable \"=<\") (compound (functor \"sins\") (args variable)))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \">=\" variable) (binop \"=\" (list (h variable))))", + "(clause (binop variable \">\") (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (args \"[]\"))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"insert\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args \"[]\" (args \"[]\"))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"sins\") (args (args variable)))) (compound (functor \"insert\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop variable \">=\"))", + "(clause (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop variable \"<\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (t variable)))))))) (compound (functor \"sins\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (compound (functor \"sins\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop variable \"<\"))", + "(clause (binop variable \"=<\") (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))))", + "(clause (binop variable \"=\") (binop \"=\" (list (t variable))))", + "(clause (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable (args (args \"[]\"))))))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"insert\") (args (args (args variable)))))", + "(clause (binop \"<\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"sins\") (args variable)) (binop variable \"=<\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop variable \"<\") (compound (functor \"sins\") (args variable)))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"sins\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop \">=\" variable))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop \">\" variable))", + "(clause (binop variable \"<\") (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop variable \"=\") (compound (functor \"conc\") (args (args variable))))", + "(clause (compound (functor \"sins\") (args variable)) (binop variable \">\"))", + "(clause (binop variable \">=\") (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args variable)))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop \"<\" variable))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (binop \"=\" \"[]\"))", + "(clause (head (compound (functor \"sins\") (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args variable)))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable) (t \"[]\")))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"sins\") (args variable (args (list (t \"[]\")))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (t variable)))))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop variable \"<\"))", + "(clause (compound (functor \"sins\") (args (args (list (h variable))))) (binop \"=<\" variable))", + "(clause (compound (functor \"sins\") (args variable)) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (t variable))))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t (list (t (list (t variable))))))))", + "(clause (compound (functor \"sins\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (binop \"=<\" variable) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"<\" variable) (compound (functor \"sins\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"conc\") (args (args variable))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))) (args (list (t (list (t (list (h variable))))))))))))", + "(clause (binop variable \">\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (binop variable \">=\") (binop variable \"=<\"))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (t variable))))))))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (binop \"=<\" variable) (binop variable \"=<\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop variable \">\"))", + "(clause (binop \">\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (binop variable \">\") (binop variable \"=<\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (list (h variable)) (args (args (list (h variable))))))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"sins\") (args (list (h variable)) (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (t variable)))))))) (binop \"=\" (list (t (list (t (list (t variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"sins\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop variable \">=\"))", + "(clause (compound (functor \"append\") (args (list (h variable)))))", + "(clause (compound (functor \"conc\") (args (list (t (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args (args (list (t variable))))))", + "(clause (binop \"<\" variable) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"sins\") (args (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (compound (functor \"sins\") (args variable)))", + "(clause (binop \"=<\" variable) (compound (functor \"sins\") (args variable)))", + "(clause (compound (functor \"sins\") (args variable)) (binop variable \">=\"))", + "(clause (head (compound (functor \"sins\") (args \"[]\"))))", + "(clause (binop variable \"is\" (binop \"-\" \"1\")))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (binop variable \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (t variable)))) (args (list (t (list (t (list (t variable))))))))))))", + "(clause (binop \"is\" (binop \"-\" \"1\")))", + "(clause (head (compound (functor \"sins\") (args (args variable (args (list (t variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))))", + "(clause (binop \">\" variable) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (t (list (h variable))))))))))) (binop \"=<\" variable))", + "(clause (compound (functor \"append\") (args (list (t (list (h variable)))))))", + "(clause (binop \"is\" (binop variable \"-\" \"1\")))", + "(clause (compound (functor \"append\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (t \"[]\")) (args (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)) (args (list (t variable))))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" variable))", + "(clause (binop variable \"==\"))", + "(clause (binop \"=\" (list (t (list (t variable))))) (binop \"=\" (list (t (list (t (list (t variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (binop variable \"=\"))", + "(clause (binop \">\" variable) (compound (functor \"sins\") (args (args (args (list (h variable)))))))", + "(clause (binop \">\" variable) (compound (functor \"conc\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"<\"))", + "(clause (binop \"=\" (list (h variable))) (binop \">=\" variable))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args variable)))", + "(clause (binop \">=\" variable) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop variable \"<\") (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop \"is\" (binop variable \"-\")))", + "(clause (head (compound (functor \"sins\") (args variable (args (list (h variable)))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t \"[]\")) (args variable))))))", + "(clause (binop variable \"=\") (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args variable)))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (binop \"=\" (list (t variable))))", + "(clause (binop variable \"is\") (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (binop variable \"=\"))", + "(clause (binop \"<\" variable) (binop \"=\" (list (t (list (t (list (h variable))))))))", + "(clause (binop variable \">\") (binop variable \">\"))", + "(clause (compound (functor \"conc\") (args (args variable))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (compound (functor \"sins\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop variable \">\"))", + "(clause (binop variable \"<\") (binop variable \">=\"))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"append\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (t variable))))))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">=\"))", + "(clause (binop \"=\" (list (h variable))) (binop \"<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"==\"))", + "(clause (head (compound (functor \"sins\") (args \"[]\" (args \"[]\")))))", + "(clause (binop \">\" variable) (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args \"[]\" (args (args \"[]\"))))))", + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (binop variable \"is\"))", + "(clause (compound (functor \"sins2\") (args variable)))", + "(clause (compound (functor \"conc\") (args (args (list (t (list (h variable))))))))", + "(clause (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins\") (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=\" (list (t (list (t variable))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"<\" variable))", + "(clause (compound (functor \"sins\") (args (args (list (t variable))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"sins\") (args (args (args (list (h variable)))))))", + "(clause (binop variable \">=\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"<\"))", + "(clause (compound (functor \"append\") (args (args variable))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop \"<\" variable))", + "(clause (compound (functor \"sins\") (args variable (args (args (list (t (list (h variable)))))))))", + "(clause (binop variable \">=\") (binop variable \"<\"))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"sins\") (args (args (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (t variable))))))) (compound (functor \"is_sorted\") (args (list (t variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args (list (t (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (args (list (t (list (t variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (t (list (h variable))))))))))) (binop \"<\" variable))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (binop \"==\" variable))", + "(clause (binop \"=<\" variable) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"is_sorted\") (args (list (t (list (h variable))))))) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"is_sorted\") (args (list (h variable))))) (binop variable \"==\"))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (t (list (t variable))))))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (binop \"is\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop variable \"<\"))", + "(clause (binop \"=\" (list (t variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (compound (functor \"conc\") (args (args (args variable)))))", + "(clause (compound (functor \"sins\") (args variable)) (binop variable \"<\"))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (compound (functor \"append\") (args (args variable))))", + "(clause (binop variable \"=<\") (compound (functor \"append\") (args (list (h variable)))))", + "(clause (binop variable \"=<\") (binop variable \"=<\"))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (binop \"=<\" variable) (compound (functor \"conc\") (args (list (t (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args (args (args variable)))) (compound (functor \"conc\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"sins\") (args variable)))", + "(clause (binop variable \"<\") (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop \"=\" (list (h variable))) (binop variable \">\"))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"conc\") (args (list (t (list (h variable)))))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args (list (t variable))))))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \">\" variable))", + "(clause (compound (functor \"conc\") (args (list (t (list (t (list (h variable)))))))))", + "(clause (binop variable \"is\"))", + "(clause (binop \"==\" \"1\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args (args (list (t (list (t variable)))))))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"sins\") (args variable)))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"append\") (args (list (t (list (h variable)))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \"<\" variable))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"append\") (args (args variable))))", + "(clause (binop variable \"==\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"sins\") (args (args (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args variable)))) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"==\" \"1\"))", + "(clause (binop variable \">\") (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop variable \">=\"))", + "(clause (binop \"<\" variable) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"conc\") (args variable (args (args variable)))))", + "(clause (binop \">\" variable) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (compound (functor \"sins\") (args (args variable))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop \">\" variable))", + "(clause (binop \"=<\" variable) (compound (functor \"conc\") (args (args (list (t (list (h variable))))))))", + "(clause (compound (functor \"sins\") (args (args variable (args (list (t variable)))))))", + "(clause (head (compound (functor \"sins2\") (args (args (args variable))))) (compound (functor \"conc\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (list (t (list (h variable)))))))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (t variable)))))))) (compound (functor \"conc\") (args (args variable))))", + "(clause (binop \"=<\" variable) (compound (functor \"append\") (args (list (t (list (h variable)))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args (args (list (t variable)))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (binop variable \"=<\") (compound (functor \"conc\") (args (list (t (list (h variable)))))))", + "(clause (compound (functor \"conc\") (args (args (list (t (list (t variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"append\") (args (list (h variable)))))", + "(clause (binop \">=\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (binop \">=\" variable))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"conc\") (args variable)) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (binop \"=\" variable) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (t variable)))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"is_sorted\") (args (list (h variable)))))", + "(clause (head (compound (functor \"sins2\") (args variable))) (compound (functor \"conc\") (args (args (list (h variable))))))", + "(clause (binop variable \"=<\") (compound (functor \"sins\") (args (args (args (list (h variable)))))))", + "(clause (binop \"=\" (list (t (list (t (list (h (binop \"=\" \"[]\")))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop variable \">\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (list (h variable)))))", + "(clause (compound (functor \"sins\") (args variable (args (args (list (h variable)))))))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop (list (h variable)) \"=\"))", + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (compound (functor \"conc\") (args (list (t (list (t (list (h variable)))))))))", + "(clause (compound (functor \"sins\") (args (args variable))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop variable \"=\") (compound (functor \"sins\") (args variable)))", + "(clause (binop \"=\" (list (t (list (h variable))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"conc\") (args (list (t variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (binop (list (t variable)) \"=\"))" + ], + "rules": [ + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"sins\") (args (args (args variable)))))" + ], + "distribution": [ + 100, + 0 + ], + "quality": 0.9808876432758806 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args variable))))))" + ], + "distribution": [ + 65, + 0 + ], + "quality": 0.9677851622133488 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable))) (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 94, + 1 + ], + "quality": 0.965156282594389 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable))))" + ], + "distribution": [ + 59, + 0 + ], + "quality": 0.9635570811337941 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (h variable)))))))) (binop \"=<\" variable))" + ], + "distribution": [ + 57, + 0 + ], + "quality": 0.9620571503100492 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=<\") (compound (functor \"sins\") (args variable)))" + ], + "distribution": [ + 56, + 0 + ], + "quality": 0.9612483586107097 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sins\") (args (args (args variable)))))" + ], + "distribution": [ + 69, + 1 + ], + "quality": 0.9492448843969059 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args variable))))))" + ], + "distribution": [ + 44, + 0 + ], + "quality": 0.9472892138049042 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"=<\") (binop \"=\" (list (t (list (h variable))))))" + ], + "distribution": [ + 41, + 0 + ], + "quality": 0.9423634075261883 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))))" + ], + "distribution": [ + 38, + 0 + ], + "quality": 0.9362438391543242 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args \"[]\"))))))" + ], + "distribution": [ + 38, + 0 + ], + "quality": 0.9362438391543242 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (t (list (h variable))))))))))" + ], + "distribution": [ + 51, + 1 + ], + "quality": 0.9266082478740626 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args \"[]\"))))))" + ], + "distribution": [ + 46, + 1 + ], + "quality": 0.9152002140639004 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args \"[]\" (args variable))))))", + "(clause (binop variable \"=\"))" + ], + "distribution": [ + 42, + 0 + ], + "quality": 0.9087943314582194 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args \"[]\" (args variable))))))" + ], + "distribution": [ + 115, + 8 + ], + "quality": 0.9028855457375982 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (compound (functor \"sins\") (args variable)))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.8989020000391386 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sins\") (args variable)) (binop variable \"=<\"))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.8989020000391386 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \"<\") (compound (functor \"sins\") (args variable)))" + ], + "distribution": [ + 27, + 0 + ], + "quality": 0.8989020000391386 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"sins\") (args (args (args (list (h variable)))))))" + ], + "distribution": [ + 26, + 0 + ], + "quality": 0.8932052595715085 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 23, + 0 + ], + "quality": 0.8738339200055651 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (t (list (t variable)))))))) (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.855298262622929 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"sins\") (args variable)) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.855298262622929 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (t variable))))))))) (compound (functor \"sins\") (args (args (args variable)))))" + ], + "distribution": [ + 21, + 0 + ], + "quality": 0.855298262622929 + }, + { + "class": false, + "condition": [ + "(clause (binop variable \">\") (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 20, + 0 + ], + "quality": 0.8450662166976287 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)) (args (list (t (list (t variable))))))))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop \"=<\" variable))" + ], + "distribution": [ + 3, + 44 + ], + "quality": 0.8335487352816061 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (compound (functor \"conc\") (args (args variable))))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8298329739707182 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"conc\") (args variable)))" + ], + "distribution": [ + 18, + 0 + ], + "quality": 0.8298329739707182 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)) (args (list (t (list (t variable))))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop \"=<\" variable))" + ], + "distribution": [ + 3, + 43 + ], + "quality": 0.8294744267227235 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)) (args (list (t (list (t variable))))))))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop \"=<\" variable))" + ], + "distribution": [ + 8, + 45 + ], + "quality": 0.7455981044389828 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 2, + 24 + ], + "quality": 0.7441031979469139 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)) (args (list (t (list (t variable))))))))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)) (args (list (h variable))))))))" + ], + "distribution": [ + 8, + 44 + ], + "quality": 0.7400662138722005 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))" + ], + "distribution": [ + 5, + 28 + ], + "quality": 0.7341998361017273 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t variable))))" + ], + "distribution": [ + 4, + 29 + ], + "quality": 0.7303542401887497 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args variable))))" + ], + "distribution": [ + 3, + 26 + ], + "quality": 0.7110741956551745 + }, + { + "class": true, + "condition": [ + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"=<\"))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 3, + 26 + ], + "quality": 0.7110741956551745 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"insert\") (args (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))" + ], + "distribution": [ + 8, + 30 + ], + "quality": 0.7098895699381707 + }, + { + "class": true, + "condition": [ + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"=<\"))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 5, + 31 + ], + "quality": 0.7060575242929531 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args variable))))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable))) (compound (functor \"insert\") (args variable)))" + ], + "distribution": [ + 7, + 29 + ], + "quality": 0.696226701732783 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=<\" variable))", + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args (args (list (t variable)))))) (compound (functor \"sins\") (args (args variable))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 6, + 31 + ], + "quality": 0.6818629466509938 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (binop variable \"=<\"))" + ], + "distribution": [ + 3, + 21 + ], + "quality": 0.6634301112541018 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (head (compound (functor \"sins\") (args variable))) (binop variable \"=<\"))", + "(clause (binop \">\" variable) (binop \"=\" (list (h variable))))", + "(clause (head (compound (functor \"sins\") (args (args \"[]\")))))" + ], + "distribution": [ + 10, + 36 + ], + "quality": 0.6488769570244319 + }, + { + "class": true, + "condition": [ + "(clause (binop variable \">\") (compound (functor \"sins\") (args variable)))", + "(clause (compound (functor \"sins\") (args (args (args variable)))) (binop \"=\" (list (t variable))))", + "(clause (binop \"=<\" variable) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))" + ], + "distribution": [ + 7, + 25 + ], + "quality": 0.6030083742620038 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))", + "(clause (binop \"=\" (list (h variable))) (binop \"=\" (list (h variable))))" + ], + "distribution": [ + 1, + 10 + ], + "quality": 0.5822077796881613 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args (list (t (list (h variable))))))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))" + ], + "distribution": [ + 26, + 45 + ], + "quality": 0.554086293717492 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))", + "(clause (head (compound (functor \"sins\") (args (args (list (h variable)))))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args variable (args (args (list (h variable))))))))" + ], + "distribution": [ + 26, + 47 + ], + "quality": 0.5431899910006248 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"sins\") (args (args (args (list (t variable))))))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"sins\") (args (args (args (list (h variable))))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"sins\") (args variable (args \"[]\")))))" + ], + "distribution": [ + 26, + 45 + ], + "quality": 0.540320563981338 + } + ] +} \ No newline at end of file diff --git a/prolog/problems/sorting/slowest_sort_ever_2/bugs.json b/prolog/problems/sorting/slowest_sort_ever_2/bugs.json new file mode 100644 index 0000000..422291f --- /dev/null +++ b/prolog/problems/sorting/slowest_sort_ever_2/bugs.json @@ -0,0 +1,245 @@ +{ + "patterns": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (compound (functor \"permute\") (args variable)))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"permute\") (args (args variable))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args \"[]\")))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args \"[]\"))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args \"[]\" (args \"[]\")))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (binop variable \"=\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable)) (args (list (h variable)))))))", + "(clause (binop variable \"=<\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"slowest_sort_ever\") (args (args variable))))", + "(clause (binop \"=<\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (binop variable \"=\"))", + "(clause (compound (functor \"is_sorted\") (args variable)))", + "(clause (binop variable \"=\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (t variable)))))) (compound (functor \"slowest_sort_ever\") (args (args variable))))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop \"=\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (t variable))))))) (compound (functor \"slowest_sort_ever\") (args (list (t variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (t \"[]\")))) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (t \"[]\")))) (args (list (h variable)))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable) (t (list (t \"[]\"))))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable) (t \"[]\"))))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable))))) (binop variable \">\"))", + "(clause (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" \"[]\"))", + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"slowest_sort_ever\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable))))))) (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))", + "(clause (binop variable \"=\" \"[]\"))", + "(clause (compound (functor \"slowest_sort_ever\") (args (args variable))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable))))))) (binop \"<\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (h variable)))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable))))) (binop variable \"<\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable))))))) (binop \"=\" variable))", + "(clause (binop \"<\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (h variable)))))) (binop variable \"<\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t variable))))) (compound (functor \"slowest_sort_ever\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable))))) (binop variable \"=\"))", + "(clause (binop variable \"<\"))", + "(clause (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable) (t \"[]\"))))))", + "(clause (compound (functor \"append\") (args (list (h variable)))))", + "(clause (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (compound (functor \"del\") (args (args (args variable)))) (compound (functor \"slowest_sort_ever\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t \"[]\"))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable (args variable)))))", + "(clause (binop \"=\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (compound (functor \"del\") (args (args variable))))", + "(clause (compound (functor \"permute\") (args (args variable))) (binop \"=\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable))))))) (binop \">\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (h variable)))))) (binop \">\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable)))) (args (list (h variable)))))))", + "(clause (compound (functor \"min\") (args (args variable))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable))))) (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (compound (functor \"min\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t \"[]\")) (args (list (h variable)))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable)))) (args (list (t (list (h variable)))))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable))))) (binop variable \"=<\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (t (list (h variable)))))))) (binop \"<\" variable))", + "(clause (compound (functor \"min\") (args variable)) (compound (functor \"del\") (args (args variable))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (t (list (h variable)))))))) (binop \"=\" variable))", + "(clause (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (t variable))))))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (binop \"<\" variable) (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))", + "(clause (compound (functor \"min\") (args (args variable))) (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (t variable))) (compound (functor \"slowest_sort_ever\") (args variable)))", + "(clause (compound (functor \"slowest_sort_ever\") (args (list (t variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (compound (functor \"slowest_sort_ever\") (args variable)))", + "(clause (compound (functor \"slowest_sort_ever\") (args (args variable))) (binop variable \"=\"))", + "(clause (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable)) (args (list (t (list (h variable)))))))))", + "(clause (binop \"=\" variable) (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (t (list (h variable)))))))) (binop variable \">\"))", + "(clause (binop \"=<\" variable) (compound (functor \"append\") (args (args (list (h variable))))))", + "(clause (compound (functor \"append\") (args (args (args variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))))", + "(clause (compound (functor \"append\") (args (args (list (t variable))))))", + "(clause (compound (functor \"is_sorted\") (args variable)) (compound (functor \"permute\") (args (args variable))))", + "(clause (compound (functor \"slowest_sort_ever\") (args (list (h variable)))) (binop \"=\" (list (t (list (h variable))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (binop \"=\" variable))", + "(clause (binop variable \"=<\") (compound (functor \"append\") (args (list (h variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (binop \"=\" variable))", + "(clause (binop variable \"=\" (list (t \"[]\"))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable))))))) (binop \"=<\" variable))", + "(clause (binop \"=\" (list (h variable) (t \"[]\"))))", + "(clause (binop variable \">\") (compound (functor \"vstavi\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (h variable)))))) (compound (functor \"min\") (args (args variable))))", + "(clause (head (compound (functor \"ins\") (args (args (args variable))))) (binop variable \"=\"))", + "(clause (head (compound (functor \"vstavi\") (args (args (args variable))))) (compound (functor \"append\") (args (args (args variable)))))", + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"slowest_sort_ever\") (args (args variable))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args (list (h variable)))))) (compound (functor \"del\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable))))) (binop variable \">=\"))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"memb\") (args (args variable))))", + "(clause (binop \"=\" (list (t \"[]\"))))", + "(clause (binop variable \">\") (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))", + "(clause (compound (functor \"slowest_sort_ever\") (args (list (t variable)))) (binop \"=\" (list (t (list (t variable))))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable))))))) (binop \">=\" variable))", + "(clause (binop variable \"=<\") (binop \"=\" (list (h variable))))", + "(clause (binop \"=\" (list (h variable))) (compound (functor \"memb\") (args variable)))", + "(clause (compound (functor \"is_sorted\") (args variable)) (binop variable \"=\"))", + "(clause (compound (functor \"del\") (args variable)) (binop \"=\" (list (h variable))))", + "(clause (compound (functor \"slowest_sort_ever\") (args (list (h variable)))) (binop \"=<\" variable))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"sins\") (args (args (args variable)))))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"append\") (args (args (args variable)))))" + ], + "rules": [ + { + "class": true, + "condition": [ + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"is_sorted\") (args variable)))", + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"permute\") (args (args variable))))" + ], + "distribution": [ + 1, + 128 + ], + "quality": 0.977312994125087 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))))" + ], + "distribution": [ + 33, + 0 + ], + "quality": 0.9411313315204629 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"slowest_sort_ever\") (args variable)))" + ], + "distribution": [ + 17, + 0 + ], + "quality": 0.8866114188337576 + }, + { + "class": true, + "condition": [ + "(clause (compound (functor \"permute\") (args (args variable))) (compound (functor \"is_sorted\") (args variable)))" + ], + "distribution": [ + 22, + 142 + ], + "quality": 0.8544563360679102 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (h variable))))))) (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))" + ], + "distribution": [ + 12, + 0 + ], + "quality": 0.8401627944197684 + }, + { + "class": true, + "condition": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args (args variable)))) (compound (functor \"is_sorted\") (args variable)))" + ], + "distribution": [ + 26, + 130 + ], + "quality": 0.8198601268494158 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (t (list (t \"[]\")))) (args (list (t (list (h variable)))))))))" + ], + "distribution": [ + 10, + 0 + ], + "quality": 0.8064072034153157 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args (list (h variable))))) (compound (functor \"slowest_sort_ever\") (args (list (h variable)))))" + ], + "distribution": [ + 8, + 0 + ], + "quality": 0.7647521693776633 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"is_sorted\") (args variable)) (compound (functor \"permute\") (args (args variable))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7291291418494714 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7291291418494714 + }, + { + "class": false, + "condition": [ + "(clause (head (compound (functor \"slowest_sort_ever\") (args variable))) (binop \"=\" variable))" + ], + "distribution": [ + 7, + 0 + ], + "quality": 0.7291291418494714 + }, + { + "class": false, + "condition": [ + "(clause (compound (functor \"memb\") (args (args variable))) (compound (functor \"slowest_sort_ever\") (args (args variable))))" + ], + "distribution": [ + 6, + 0 + ], + "quality": 0.6915761303761268 + } + ] +} \ No newline at end of file -- cgit v1.2.1