From a3daec29711a62fea04dc381f5691c598285453f Mon Sep 17 00:00:00 2001 From: Laura Date: Thu, 16 Jan 2025 17:03:57 +0100 Subject: [PATCH 1/2] Changed imports for numpy isnan --- notebooks/Alhazen.ipynb | 3436 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 3247 insertions(+), 189 deletions(-) diff --git a/notebooks/Alhazen.ipynb b/notebooks/Alhazen.ipynb index 6fd212e9..a5ccb1e3 100644 --- a/notebooks/Alhazen.ipynb +++ b/notebooks/Alhazen.ipynb @@ -22,7 +22,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 117, "metadata": {}, "outputs": [], "source": [ @@ -47,7 +47,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 118, "metadata": { "button": false, "new_sheet": false, @@ -209,7 +209,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 119, "metadata": {}, "outputs": [], "source": [ @@ -218,7 +218,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 120, "metadata": {}, "outputs": [], "source": [ @@ -237,7 +237,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 121, "metadata": {}, "outputs": [], "source": [ @@ -248,7 +248,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 122, "metadata": {}, "outputs": [], "source": [ @@ -294,7 +294,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 123, "metadata": {}, "outputs": [], "source": [ @@ -343,7 +343,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 124, "metadata": {}, "outputs": [], "source": [ @@ -361,7 +361,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 125, "metadata": {}, "outputs": [], "source": [ @@ -370,7 +370,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 126, "metadata": {}, "outputs": [], "source": [ @@ -385,7 +385,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 127, "metadata": {}, "outputs": [], "source": [ @@ -394,7 +394,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 128, "metadata": {}, "outputs": [], "source": [ @@ -423,9 +423,20 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 129, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 129, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "sample = \"sqrt(-16)\"\n", "sample_runner(sample)" @@ -440,7 +451,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 130, "metadata": {}, "outputs": [], "source": [ @@ -458,9 +469,27 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 131, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "name 'undef_function' is not defined\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 131, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "sample_runner(\"undef_function(QUERY)\")" ] @@ -482,7 +511,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 132, "metadata": {}, "outputs": [], "source": [ @@ -493,7 +522,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 133, "metadata": {}, "outputs": [], "source": [ @@ -517,7 +546,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 134, "metadata": {}, "outputs": [], "source": [ @@ -533,9 +562,74 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 135, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "name 'undef_function' is not defined\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
oracle
0BUG
1NO_BUG
2NO_BUG
3UNDEF
\n", + "
" + ], + "text/plain": [ + " oracle\n", + "0 BUG\n", + "1 NO_BUG\n", + "2 NO_BUG\n", + "3 UNDEF" + ] + }, + "execution_count": 135, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "labels = execute_samples(sample_list)\n", "labels" @@ -550,9 +644,20 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 136, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sqrt(-20) BUG\n", + "cos(2) NO_BUG\n", + "sqrt(-100) NO_BUG\n", + "undef_function(foo) UNDEF\n" + ] + } + ], "source": [ "for i, row in enumerate(labels['oracle']): print(sample_list[i].ljust(30) + str(row))" ] @@ -566,9 +671,62 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 137, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
oracle
0BUG
1NO_BUG
2NO_BUG
\n", + "
" + ], + "text/plain": [ + " oracle\n", + "0 BUG\n", + "1 NO_BUG\n", + "2 NO_BUG" + ] + }, + "execution_count": 137, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "clean_data = labels.drop(labels[labels.oracle.astype(str) == \"UNDEF\"].index)\n", "clean_data" @@ -583,9 +741,27 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 138, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sqrt(-20) BUG\n", + "cos(2) NO_BUG\n", + "sqrt(-100) NO_BUG\n", + "undef_function(foo) UNDEF\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "name 'undef_function' is not defined\n" + ] + } + ], "source": [ "oracle = execute_samples(sample_list)\n", "for i, row in enumerate(oracle['oracle']):\n", @@ -608,7 +784,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 139, "metadata": {}, "outputs": [], "source": [ @@ -624,7 +800,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 140, "metadata": {}, "outputs": [], "source": [ @@ -640,9 +816,20 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 141, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "cos(-16) NO_BUG\n", + "tan(-16) NO_BUG\n", + "sqrt(-100) NO_BUG\n", + "sqrt(-20.23412431234123) BUG\n" + ] + } + ], "source": [ "for i, row in enumerate(guess_oracle['oracle']):\n", " print(guess_samples[i].ljust(30) + str(row))" @@ -711,7 +898,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 142, "metadata": {}, "outputs": [], "source": [ @@ -720,7 +907,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 143, "metadata": {}, "outputs": [], "source": [ @@ -766,7 +953,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 144, "metadata": {}, "outputs": [], "source": [ @@ -828,16 +1015,7 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from numpy import nanmax, isnan" - ] - }, - { - "cell_type": "code", - "execution_count": null, + "execution_count": 145, "metadata": {}, "outputs": [], "source": [ @@ -878,10 +1056,10 @@ "\n", " # Return maximum value encountered in tree, ignoring all NaNs\n", " tree_values = [value] + [self.get_feature_value(c) for c in children]\n", - " if all(isnan(tree_values)):\n", + " if all(numpy.isnan(tree_values)):\n", " return value\n", " else:\n", - " return nanmax(tree_values)" + " return numpy.nanmax(tree_values)" ] }, { @@ -893,7 +1071,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 146, "metadata": {}, "outputs": [], "source": [ @@ -921,7 +1099,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 147, "metadata": {}, "outputs": [], "source": [ @@ -931,7 +1109,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 148, "metadata": {}, "outputs": [], "source": [ @@ -991,7 +1169,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 149, "metadata": {}, "outputs": [], "source": [ @@ -1009,9 +1187,65 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 150, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[exists(),\n", + " exists( == ()),\n", + " exists(),\n", + " exists( == sqrt),\n", + " exists( == tan),\n", + " exists( == cos),\n", + " exists( == sin),\n", + " exists(),\n", + " exists( == -),\n", + " exists( == ),\n", + " exists(),\n", + " exists( == .),\n", + " exists( == ),\n", + " exists(),\n", + " exists( == ),\n", + " exists( == ),\n", + " exists(),\n", + " exists( == ),\n", + " exists( == ),\n", + " exists(),\n", + " exists( == 1),\n", + " exists( == 2),\n", + " exists( == 3),\n", + " exists( == 4),\n", + " exists( == 5),\n", + " exists( == 6),\n", + " exists( == 7),\n", + " exists( == 8),\n", + " exists( == 9),\n", + " exists(),\n", + " exists( == 0),\n", + " exists( == 1),\n", + " exists( == 2),\n", + " exists( == 3),\n", + " exists( == 4),\n", + " exists( == 5),\n", + " exists( == 6),\n", + " exists( == 7),\n", + " exists( == 8),\n", + " exists( == 9),\n", + " num(),\n", + " num(),\n", + " num(),\n", + " num(),\n", + " num(),\n", + " num()]" + ] + }, + "execution_count": 150, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "extract_all_features(CALC_GRAMMAR)" ] @@ -1025,9 +1259,65 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 151, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['exists()',\n", + " \" == '()'\",\n", + " 'exists()',\n", + " \" == 'sqrt'\",\n", + " \" == 'tan'\",\n", + " \" == 'cos'\",\n", + " \" == 'sin'\",\n", + " 'exists()',\n", + " \" == '-'\",\n", + " \" == ''\",\n", + " 'exists()',\n", + " \" == '.'\",\n", + " \" == ''\",\n", + " 'exists()',\n", + " \" == ''\",\n", + " \" == ''\",\n", + " 'exists()',\n", + " \" == ''\",\n", + " \" == ''\",\n", + " 'exists()',\n", + " \" == '1'\",\n", + " \" == '2'\",\n", + " \" == '3'\",\n", + " \" == '4'\",\n", + " \" == '5'\",\n", + " \" == '6'\",\n", + " \" == '7'\",\n", + " \" == '8'\",\n", + " \" == '9'\",\n", + " 'exists()',\n", + " \" == '0'\",\n", + " \" == '1'\",\n", + " \" == '2'\",\n", + " \" == '3'\",\n", + " \" == '4'\",\n", + " \" == '5'\",\n", + " \" == '6'\",\n", + " \" == '7'\",\n", + " \" == '8'\",\n", + " \" == '9'\",\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '',\n", + " '']" + ] + }, + "execution_count": 151, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "[f.friendly_name() for f in extract_all_features(CALC_GRAMMAR)]" ] @@ -1049,7 +1339,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 152, "metadata": {}, "outputs": [], "source": [ @@ -1083,9 +1373,170 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 153, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sampleexists(<start>)exists(<start>@0)exists(<function>)exists(<function>@0)exists(<function>@1)exists(<function>@2)exists(<function>@3)exists(<term>)exists(<term>@0)...exists(<digit>@6)exists(<digit>@7)exists(<digit>@8)exists(<digit>@9)num(<term>)num(<value>)num(<lead-digit>)num(<digit>)num(<integer>)num(<digits>)
0sqrt(-900)111100011...0000-900.00900.009.00.0900.00.0
1sin(24)111000110...000024.0024.002.04.024.04.0
2cos(-3.14)111001011...0000-3.143.14NaN4.03.014.0
\n", + "

3 rows × 47 columns

\n", + "
" + ], + "text/plain": [ + " sample exists() exists(@0) exists() \\\n", + "0 sqrt(-900) 1 1 1 \n", + "1 sin(24) 1 1 1 \n", + "2 cos(-3.14) 1 1 1 \n", + "\n", + " exists(@0) exists(@1) exists(@2) \\\n", + "0 1 0 0 \n", + "1 0 0 0 \n", + "2 0 0 1 \n", + "\n", + " exists(@3) exists() exists(@0) ... \\\n", + "0 0 1 1 ... \n", + "1 1 1 0 ... \n", + "2 0 1 1 ... \n", + "\n", + " exists(@6) exists(@7) exists(@8) exists(@9) \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "\n", + " num() num() num() num() num() \\\n", + "0 -900.00 900.00 9.0 0.0 900.0 \n", + "1 24.00 24.00 2.0 4.0 24.0 \n", + "2 -3.14 3.14 NaN 4.0 3.0 \n", + "\n", + " num() \n", + "0 0.0 \n", + "1 4.0 \n", + "2 14.0 \n", + "\n", + "[3 rows x 47 columns]" + ] + }, + "execution_count": 153, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "sample_list = [\"sqrt(-900)\", \"sin(24)\", \"cos(-3.14)\"]\n", "collect_features(sample_list, CALC_GRAMMAR)" @@ -1093,7 +1544,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 154, "metadata": {}, "outputs": [], "source": [ @@ -1118,9 +1569,157 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 155, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Features of sqrt(-900):\n", + " exists(): 1\n", + " exists( == ()): 1\n", + " exists(): 1\n", + " exists( == sqrt): 1\n", + " exists( == tan): 0\n", + " exists( == cos): 0\n", + " exists( == sin): 0\n", + " exists(): 1\n", + " exists( == -): 1\n", + " exists( == ): 0\n", + " exists(): 1\n", + " exists( == .): 0\n", + " exists( == ): 1\n", + " exists(): 1\n", + " exists( == ): 1\n", + " exists( == ): 0\n", + " exists(): 1\n", + " exists( == ): 1\n", + " exists( == ): 1\n", + " exists(): 1\n", + " exists( == 1): 0\n", + " exists( == 2): 0\n", + " exists( == 3): 0\n", + " exists( == 4): 0\n", + " exists( == 5): 0\n", + " exists( == 6): 0\n", + " exists( == 7): 0\n", + " exists( == 8): 0\n", + " exists( == 9): 1\n", + " exists(): 1\n", + " exists( == 0): 1\n", + " exists( == 1): 0\n", + " exists( == 2): 0\n", + " exists( == 3): 0\n", + " exists( == 4): 0\n", + " exists( == 5): 0\n", + " exists( == 6): 0\n", + " exists( == 7): 0\n", + " exists( == 8): 0\n", + " exists( == 9): 0\n", + " num(): -900.0\n", + " num(): 900.0\n", + " num(): 9.0\n", + " num(): 0.0\n", + " num(): 900.0\n", + " num(): 0.0\n", + "Features of sin(24):\n", + " exists(): 1\n", + " exists( == ()): 1\n", + " exists(): 1\n", + " exists( == sqrt): 0\n", + " exists( == tan): 0\n", + " exists( == cos): 0\n", + " exists( == sin): 1\n", + " exists(): 1\n", + " exists( == -): 0\n", + " exists( == ): 1\n", + " exists(): 1\n", + " exists( == .): 0\n", + " exists( == ): 1\n", + " exists(): 1\n", + " exists( == ): 1\n", + " exists( == ): 0\n", + " exists(): 1\n", + " exists( == ): 0\n", + " exists( == ): 1\n", + " exists(): 1\n", + " exists( == 1): 0\n", + " exists( == 2): 1\n", + " exists( == 3): 0\n", + " exists( == 4): 0\n", + " exists( == 5): 0\n", + " exists( == 6): 0\n", + " exists( == 7): 0\n", + " exists( == 8): 0\n", + " exists( == 9): 0\n", + " exists(): 1\n", + " exists( == 0): 0\n", + " exists( == 1): 0\n", + " exists( == 2): 0\n", + " exists( == 3): 0\n", + " exists( == 4): 1\n", + " exists( == 5): 0\n", + " exists( == 6): 0\n", + " exists( == 7): 0\n", + " exists( == 8): 0\n", + " exists( == 9): 0\n", + " num(): 24.0\n", + " num(): 24.0\n", + " num(): 2.0\n", + " num(): 4.0\n", + " num(): 24.0\n", + " num(): 4.0\n", + "Features of cos(-3.14):\n", + " exists(): 1\n", + " exists( == ()): 1\n", + " exists(): 1\n", + " exists( == sqrt): 0\n", + " exists( == tan): 0\n", + " exists( == cos): 1\n", + " exists( == sin): 0\n", + " exists(): 1\n", + " exists( == -): 1\n", + " exists( == ): 0\n", + " exists(): 1\n", + " exists( == .): 1\n", + " exists( == ): 0\n", + " exists(): 1\n", + " exists( == ): 0\n", + " exists( == ): 1\n", + " exists(): 1\n", + " exists( == ): 1\n", + " exists( == ): 1\n", + " exists(): 0\n", + " exists( == 1): 0\n", + " exists( == 2): 0\n", + " exists( == 3): 0\n", + " exists( == 4): 0\n", + " exists( == 5): 0\n", + " exists( == 6): 0\n", + " exists( == 7): 0\n", + " exists( == 8): 0\n", + " exists( == 9): 0\n", + " exists(): 1\n", + " exists( == 0): 0\n", + " exists( == 1): 1\n", + " exists( == 2): 0\n", + " exists( == 3): 1\n", + " exists( == 4): 1\n", + " exists( == 5): 0\n", + " exists( == 6): 0\n", + " exists( == 7): 0\n", + " exists( == 8): 0\n", + " exists( == 9): 0\n", + " num(): -3.14\n", + " num(): 3.14\n", + " num(): nan\n", + " num(): 4.0\n", + " num(): 3.0\n", + " num(): 14.0\n" + ] + } + ], "source": [ "all_features = extract_all_features(CALC_GRAMMAR)\n", "for sample in sample_list:\n", @@ -1146,7 +1745,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 156, "metadata": {}, "outputs": [], "source": [ @@ -1155,9 +1754,248 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 157, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "0\n", + "<start>\n", + "\n", + "\n", + "\n", + "1\n", + "<expr>\n", + "\n", + "\n", + "\n", + "0->1\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "2\n", + "<term>\n", + "\n", + "\n", + "\n", + "1->2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "13\n", + " + \n", + "\n", + "\n", + "\n", + "1->13\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "14\n", + "<expr>\n", + "\n", + "\n", + "\n", + "1->14\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "3\n", + "<factor>\n", + "\n", + "\n", + "\n", + "2->3\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "7\n", + " * \n", + "\n", + "\n", + "\n", + "2->7\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "8\n", + "<term>\n", + "\n", + "\n", + "\n", + "2->8\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "4\n", + "<integer>\n", + "\n", + "\n", + "\n", + "3->4\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "5\n", + "<digit>\n", + "\n", + "\n", + "\n", + "4->5\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "6\n", + "6 (54)\n", + "\n", + "\n", + "\n", + "5->6\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "9\n", + "<factor>\n", + "\n", + "\n", + "\n", + "8->9\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "10\n", + "<integer>\n", + "\n", + "\n", + "\n", + "9->10\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "11\n", + "<digit>\n", + "\n", + "\n", + "\n", + "10->11\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "12\n", + "3 (51)\n", + "\n", + "\n", + "\n", + "11->12\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "15\n", + "<term>\n", + "\n", + "\n", + "\n", + "14->15\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "16\n", + "<factor>\n", + "\n", + "\n", + "\n", + "15->16\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "17\n", + "<integer>\n", + "\n", + "\n", + "\n", + "16->17\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "18\n", + "<digit>\n", + "\n", + "\n", + "\n", + "17->18\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "19\n", + "9 (57)\n", + "\n", + "\n", + "\n", + "18->19\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 157, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# For this example, fix the random seed so that the produced output is deterministic\n", "random.seed(24)\n", @@ -1205,7 +2043,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 158, "metadata": {}, "outputs": [], "source": [ @@ -1229,7 +2067,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 159, "metadata": {}, "outputs": [], "source": [ @@ -1238,7 +2076,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 160, "metadata": {}, "outputs": [], "source": [ @@ -1264,9 +2102,22 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 161, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " ['', '1 + 2']\n", + " [' + ', ' - ', '', '1 + 2', '2']\n", + " [' * ', ' / ', '', '1', '2']\n", + " ['+', '-', '()', '.', '', '1', '2']\n", + " ['', '', '1', '2']\n", + " ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']\n" + ] + } + ], "source": [ "transformed_grammar = transform_grammar(\"1 + 2\", EXPR_GRAMMAR)\n", "for rule in transformed_grammar:\n", @@ -1315,7 +2166,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 162, "metadata": {}, "outputs": [], "source": [ @@ -1350,7 +2201,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 163, "metadata": {}, "outputs": [], "source": [ @@ -1375,7 +2226,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 164, "metadata": {}, "outputs": [], "source": [ @@ -1404,7 +2255,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 165, "metadata": {}, "outputs": [], "source": [ @@ -1425,7 +2276,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 166, "metadata": {}, "outputs": [], "source": [ @@ -1434,7 +2285,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 167, "metadata": {}, "outputs": [], "source": [ @@ -1448,9 +2299,108 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 168, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "Tree\n", + "\n", + "\n", + "\n", + "0\n", + "\n", + "function-sqrt <= 0.5\n", + "gini = 0.408\n", + "samples = 7\n", + "value = [2, 5]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "1\n", + "\n", + "gini = 0.0\n", + "samples = 4\n", + "value = [0, 4]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "0->1\n", + "\n", + "\n", + "True\n", + "\n", + "\n", + "\n", + "2\n", + "\n", + "number <= 13.0\n", + "gini = 0.444\n", + "samples = 3\n", + "value = [2, 1]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "0->2\n", + "\n", + "\n", + "False\n", + "\n", + "\n", + "\n", + "3\n", + "\n", + "gini = 0.0\n", + "samples = 2\n", + "value = [2, 0]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "2->3\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "4\n", + "\n", + "gini = 0.0\n", + "samples = 1\n", + "value = [0, 1]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "2->4\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 168, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "show_decision_tree(clf, vec.get_feature_names_out())" ] @@ -1464,7 +2414,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 169, "metadata": {}, "outputs": [], "source": [ @@ -1473,7 +2423,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 170, "metadata": {}, "outputs": [], "source": [ @@ -1512,9 +2462,24 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 171, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "if function-sqrt:\n", + " if number <= 13.0000:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + "else:\n", + " NO_BUG\n", + "\n" + ] + } + ], "source": [ "print(friendly_decision_tree(clf, vec.get_feature_names_out()))" ] @@ -1590,7 +2555,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 172, "metadata": {}, "outputs": [], "source": [ @@ -1629,7 +2594,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 173, "metadata": {}, "outputs": [], "source": [ @@ -1686,18 +2651,132 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 174, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "Tree\n", + "\n", + "\n", + "\n", + "0\n", + "\n", + "function-sqrt <= 0.5\n", + "gini = 0.408\n", + "samples = 7\n", + "value = [2, 5]\n", + "class = NO BUG\n", + "\n", + "\n", + "\n", + "1\n", + "\n", + "gini = 0.0\n", + "samples = 4\n", + "value = [0, 4]\n", + "class = NO BUG\n", + "\n", + "\n", + "\n", + "0->1\n", + "\n", + "\n", + "True\n", + "\n", + "\n", + "\n", + "2\n", + "\n", + "number <= 13.0\n", + "gini = 0.444\n", + "samples = 3\n", + "value = [2, 1]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "0->2\n", + "\n", + "\n", + "False\n", + "\n", + "\n", + "\n", + "3\n", + "\n", + "gini = 0.0\n", + "samples = 2\n", + "value = [2, 0]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "2->3\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "4\n", + "\n", + "gini = 0.0\n", + "samples = 1\n", + "value = [0, 1]\n", + "class = NO BUG\n", + "\n", + "\n", + "\n", + "2->4\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 174, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "graph" ] }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 175, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "if function-sqrt:\n", + " if number <= 13.0000:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + "else:\n", + " NO_BUG\n", + "\n" + ] + } + ], "source": [ "print(friendly_decision_tree(clf, feature_names, class_names = ['NO_BUG', 'BUG']))" ] @@ -1718,7 +2797,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 176, "metadata": {}, "outputs": [], "source": [ @@ -1976,7 +3055,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 177, "metadata": {}, "outputs": [], "source": [ @@ -2064,7 +3143,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 178, "metadata": {}, "outputs": [], "source": [ @@ -2073,7 +3152,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 179, "metadata": {}, "outputs": [], "source": [ @@ -2122,7 +3201,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 180, "metadata": {}, "outputs": [], "source": [ @@ -2146,7 +3225,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 181, "metadata": {}, "outputs": [], "source": [ @@ -2163,9 +3242,19 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 182, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Path 0: function-sqrt <= 0.5, is_bug: False\n", + "Path 1: function-sqrt > 0.5 number <= 13.0, is_bug: True\n", + "Path 2: function-sqrt > 0.5 number > 13.0, is_bug: False\n" + ] + } + ], "source": [ "for count, path in enumerate(all_paths):\n", " string_path = path.get(0).get_str_ext()\n", @@ -2212,7 +3301,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 183, "metadata": {}, "outputs": [], "source": [ @@ -2238,9 +3327,19 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 184, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Path 0: function-sqrt > 0.5, is_bug: False\n", + "Path 1: function-sqrt <= 0.5 number > 13.0, is_bug: True\n", + "Path 2: function-sqrt <= 0.5 number <= 13.0, is_bug: False\n" + ] + } + ], "source": [ "for count, path in enumerate(all_paths):\n", " negated_string_path = path.get(0).get_neg_ext(bounds)[0]\n", @@ -2266,7 +3365,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 185, "metadata": {}, "outputs": [], "source": [ @@ -2313,7 +3412,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 186, "metadata": {}, "outputs": [], "source": [ @@ -2322,9 +3421,22 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 187, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "function-sqrt > 0.5, number <= 13.0\n", + "function-sqrt > 0.5, number > 13.0\n", + "function-sqrt > 0.5\n", + "function-sqrt <= 0.5, number > 13.0\n", + "function-sqrt <= 0.5, number <= 13.0\n", + "function-sqrt <= 0.5\n" + ] + } + ], "source": [ "for path in new_prediction_paths:\n", " print(path)" @@ -2346,7 +3458,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 188, "metadata": {}, "outputs": [], "source": [ @@ -2355,7 +3467,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 189, "metadata": {}, "outputs": [], "source": [ @@ -2414,9 +3526,26 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 190, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "char(o/vy) >= 7\n", + "exists(E) <= 822.9\n", + "length(VnMoy) > -6460.3, exists(T) > 6, num(b) >= -1.03\n", + "length(f) >= -7677, char(O:t) < -6\n", + "length(x`) <= 08\n", + "num(@) >= 1.695, exists(=7&) > 23\n", + "exists(rV) >= -5.9, exists(|) <= 6969.0\n", + "length(bd) >= 4.8\n", + "num(8) <= 44.870, length(8xz') <= 13\n", + "exists(H) >= 0.4, num(#) > 1, exists(Q) >= -600.19\n" + ] + } + ], "source": [ "g = GrammarFuzzer(SPEC_GRAMMAR, max_nonterminals=100)\n", "earley = EarleyParser(SPEC_GRAMMAR)\n", @@ -2427,7 +3556,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 191, "metadata": {}, "outputs": [], "source": [ @@ -2448,7 +3577,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 192, "metadata": {}, "outputs": [], "source": [ @@ -2481,7 +3610,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 193, "metadata": {}, "outputs": [], "source": [ @@ -2527,7 +3656,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 194, "metadata": {}, "outputs": [], "source": [ @@ -2554,7 +3683,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 195, "metadata": {}, "outputs": [], "source": [ @@ -2577,7 +3706,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 196, "metadata": {}, "outputs": [], "source": [ @@ -2606,7 +3735,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 197, "metadata": {}, "outputs": [], "source": [ @@ -2652,7 +3781,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 198, "metadata": {}, "outputs": [], "source": [ @@ -2728,7 +3857,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 199, "metadata": {}, "outputs": [], "source": [ @@ -2741,7 +3870,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 200, "metadata": {}, "outputs": [], "source": [ @@ -2797,7 +3926,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 201, "metadata": {}, "outputs": [], "source": [ @@ -2881,7 +4010,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 202, "metadata": {}, "outputs": [], "source": [ @@ -2897,11 +4026,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 203, "metadata": {}, "outputs": [], "source": [ - "generate_samples = generate_samples_advanced" + "GENERATE_SAMPLES = generate_samples_advanced" ] }, { @@ -2913,9 +4042,27 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 204, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--generating samples--\n" + ] + }, + { + "data": { + "text/plain": [ + "['sqrt(-81743)']" + ] + }, + "execution_count": 204, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "exsqrt = ExistenceFeature('exists(@0)', '', 'sqrt')\n", "exdigit = ExistenceFeature('exists()', '', '')\n", @@ -2934,7 +4081,7 @@ "\n", "print('--generating samples--')\n", "# samples = generate_samples(CALC_GRAMMAR, [testspec0, testspec1], 10)\n", - "samples = generate_samples(CALC_GRAMMAR, [testspec2], 10)\n", + "samples = GENERATE_SAMPLES(CALC_GRAMMAR, [testspec2], 10)\n", "samples" ] }, @@ -2970,7 +4117,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 205, "metadata": {}, "outputs": [], "source": [ @@ -2996,7 +4143,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 206, "metadata": {}, "outputs": [], "source": [ @@ -3013,7 +4160,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 207, "metadata": {}, "outputs": [], "source": [ @@ -3033,7 +4180,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 208, "metadata": {}, "outputs": [], "source": [ @@ -3052,7 +4199,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 209, "metadata": {}, "outputs": [], "source": [ @@ -3066,7 +4213,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 210, "metadata": {}, "outputs": [], "source": [ @@ -3083,7 +4230,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 211, "metadata": {}, "outputs": [], "source": [ @@ -3120,7 +4267,7 @@ " print(f\" {spec.friendly()}\")\n", "\n", " # Step 4: Generate new inputs according to the new input specifications\n", - " new_samples = generate_samples(self._grammar,\n", + " new_samples = GENERATE_SAMPLES(self._grammar,\n", " new_input_specifications,\n", " self._generator_timeout)\n", " if self._verbose:\n", @@ -3132,7 +4279,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 212, "metadata": {}, "outputs": [], "source": [ @@ -3147,7 +4294,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 213, "metadata": {}, "outputs": [], "source": [ @@ -3159,7 +4306,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 214, "metadata": {}, "outputs": [], "source": [ @@ -3193,7 +4340,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 215, "metadata": {}, "outputs": [], "source": [ @@ -3210,9 +4357,20 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 216, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['sqrt(-16)', 'sqrt(4)']" + ] + }, + "execution_count": 216, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "initial_sample_list" ] @@ -3230,9 +4388,1113 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 217, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Features: exists(), == '()', exists(), == 'sqrt', == 'tan', == 'cos', == 'sin', exists(), == '-', == '', exists(), == '.', == '', exists(), == '', == '', exists(), == '', == '', exists(), == '1', == '2', == '3', == '4', == '5', == '6', == '7', == '8', == '9', exists(), == '0', == '1', == '2', == '3', == '4', == '5', == '6', == '7', == '8', == '9', , , , , , \n", + "\n", + "Iteration #1\n", + " Decision Tree:\n", + " if <= nan:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " New samples:\n", + " tan(85), cos(-163), sin(-27.60), sqrt(-5), tan(2046.977), sin(-3.11), sqrt(-19.982), sqrt(-8.67), cos(-275), cos(3863), sqrt(-0.01), cos(-8.62380), cos(8), tan(2), cos(31.9), sin(12.9), tan(6.91), cos(-43.9), cos(-9), sin(-2.0), cos(-9.793), sin(761.0), cos(-312), sin(-216.2), sqrt(-1.6), cos(3), sqrt(-488), cos(6.65), sin(46.8), tan(-798), cos(-6.82), sin(19.50), cos(-8), sqrt(-7.3), sin(3.84), tan(-57.276), tan(99), tan(611), sin(9), cos(-1), sin(-5.0), tan(-48.5), tan(482235.4), sin(3368), sin(19.3), sqrt(5), tan(2), tan(-7), sqrt(-6.649), cos(9.9730), tan(-2), sqrt(3966), cos(55), sin(-3), sqrt(752.7), cos(8.0013), cos(-36.29), cos(-611), cos(5), sqrt(-1.014), tan(-5), tan(-38.6), tan(-70), sin(-9), cos(-48), cos(1893), cos(99.83), tan(-7.80), tan(327.39), cos(-35708), cos(-987.85), tan(-15.3), tan(-8785596.0), tan(-4), sqrt(9.283), tan(3.95), tan(-6), sqrt(-20.0), cos(-66.319), tan(0), sin(-4), sin(7.1), cos(-5), sin(-33), tan(-6.46058), sin(-9.6), sin(-5831.1), sqrt(49), tan(5.7), sqrt(-16.43), sin(1), tan(6.556), cos(-4), cos(-7962), tan(102), tan(291.7), sqrt(-64.4), tan(23942.0182), tan(-8.4348), cos(-9)\n", + "\n", + "Iteration #2\n", + " Decision Tree:\n", + " if <= 2.5000:\n", + " if == 'sqrt':\n", + " BUG\n", + " else:\n", + " if == '.':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 2.5\n", + " == 'sqrt' and > 2.5\n", + " == 'sqrt' and == '.' and > 2.5\n", + " > 2.5\n", + " <= 2.5\n", + " == 'sqrt' and == '.' and <= 2.5\n", + " == 'sqrt' and == '.' and > 2.5\n", + " == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == '.' and <= 2.5\n", + " New samples:\n", + " cos(24), sqrt(85.93), tan(-856427.34926), cos(6726.274), sin(-230), cos(1789.8), tan(721), sqrt(-18.163), tan(-29)\n", + "\n", + "Iteration #3\n", + " Decision Tree:\n", + " if == 'sqrt':\n", + " if <= 2.5000:\n", + " BUG\n", + " else:\n", + " if == '7':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == ''\n", + " == 'sqrt' and > 2.5\n", + " == '7' and == 'sqrt' and > 2.5\n", + " == 'sqrt' and == ''\n", + " == 'sqrt' and <= 2.5\n", + " == '7' and == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == ''\n", + " == '7' and == 'sqrt' and > 2.5\n", + " == '7' and == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == ''\n", + " New samples:\n", + " tan(276), sin(-8.2), sqrt(-422.2), sqrt(58.3), sqrt(278.5), sqrt(18.88586), sqrt(-7), cos(218.78), sqrt(5.7), sqrt(4307), sqrt(-2.79), sqrt(7.03), sqrt(7), sqrt(7.1779), sqrt(-4.7), sqrt(-6.7), sqrt(-3), sqrt(-737.6), sqrt(-23.5), cos(-8)\n", + "\n", + "Iteration #4\n", + " Decision Tree:\n", + " if <= 2.5000:\n", + " if == 'sqrt':\n", + " if == '-':\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '7':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == '-' and > 2.5\n", + " == 'sqrt' and == '-' and <= 2.5\n", + " == '7' and <= 2.5\n", + " == '7' and > 2.5\n", + " == 'sqrt' and == '-' and <= 2.5\n", + " == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == '-' and > 2.5\n", + " == '7' and > 2.5\n", + " == 'sqrt' and > 2.5\n", + " == '7' and <= 2.5\n", + " New samples:\n", + " tan(21.01), sqrt(30.8), sqrt(-26), sqrt(11.7), tan(737.64), sqrt(8), sqrt(66.25), sqrt(4.87), sqrt(9), sqrt(1), sqrt(97.26), sin(12), sqrt(91), cos(224.07), sqrt(47.2843), sqrt(85.51), sqrt(63.568), sqrt(6), sqrt(4.9219), sin(11772.3), sqrt(-29), sqrt(4.3), sqrt(6), sqrt(7.65), sqrt(7), sqrt(863), sqrt(-2959.550), sqrt(-30016.8), cos(-35), cos(44), sqrt(11)\n", + "\n", + "Iteration #5\n", + " Decision Tree:\n", + " if <= 2.5000:\n", + " if == 'sqrt':\n", + " if == '-':\n", + " if <= -1494.2750:\n", + " NO_BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 1.5000:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and == '-' and <= 2.5 and > -1494.2750244140625\n", + " == 'sqrt' and == '-' and > 2.5\n", + " == 'sqrt' and == '-' and <= 2.5\n", + " == '' and > 2.5\n", + " == '' and <= 2.5\n", + " == 'sqrt' and == '-' and <= 2.5 and <= -1494.2750244140625\n", + " == '' and <= 2.5\n", + " == 'sqrt' and <= 1.5 and <= 2.5\n", + " == 'sqrt' and == '-' and <= 2.5 and <= -1494.2750244140625\n", + " == 'sqrt' and == '-' and <= 2.5\n", + " == 'sqrt' and == '-' and > 2.5 and <= -1494.2750244140625\n", + " == 'sqrt' and == '-' and <= 2.5 and > -1494.2750244140625\n", + " == 'sqrt' and == '-' and > 2.5\n", + " == 'sqrt' and > 1.5 and > 2.5\n", + " == 'sqrt' and <= 1.5 and > 2.5\n", + " == 'sqrt' and == '-' and > 2.5 and > -1494.2750244140625\n", + " == 'sqrt' and > 1.5 and <= 2.5\n", + " == '' and > 2.5\n", + " New samples:\n", + " sqrt(8.202), cos(11), sqrt(1), tan(27), sqrt(6), sqrt(3.4), sin(26.1), cos(11.4), sqrt(9.7), sqrt(5.1), sin(28.95467263), sqrt(969.2), cos(257), sqrt(1.5), sqrt(0), sqrt(39386), sin(121), sqrt(86), sqrt(-1091.59), sin(-9), tan(-1), sin(7.9), tan(948223), sin(-50.7), tan(-898.4), cos(1.06314), sin(1.33), sqrt(7), cos(3), tan(7.3), sin(-61), tan(-483), sqrt(94), cos(-2.063), sin(-80.06), tan(-86.6807), sin(-8), sqrt(-93), sin(9109.502), cos(6.6), tan(-0), sqrt(3.98215), sqrt(301), sin(-50), cos(7), cos(-74), sin(-3), tan(339), cos(-7), sqrt(-89), tan(-351.63), sqrt(-614609.5), sqrt(80.797), sin(-84), tan(1.589), sqrt(1), sin(1), sqrt(-95.20), sqrt(-977.9884), sin(-33545), tan(-5.665), sqrt(-1), tan(488.3), tan(-6), tan(-7.172), tan(-4555), cos(-6.431), tan(5), sin(-3), sqrt(62.9), sqrt(-2), sqrt(-0), sin(6), sqrt(9), cos(44592), sin(-325), cos(712091.34), cos(5.9), tan(898), sin(0.3), tan(9.06), sin(0), cos(-8.8), tan(9), sqrt(-61), tan(1.9), sin(-421), cos(-4), tan(6), cos(388), sin(775.84188), cos(-1), sin(-50), tan(-0.36), tan(-0.899), tan(-6), cos(80.241), tan(8), sin(-3), tan(8.9), tan(6.6), cos(75.1), cos(-81.73), sin(-8), cos(31.11), tan(43), cos(53), tan(34), sin(-31.5), sqrt(-4), sqrt(-2.477), sqrt(-157), sin(2), sqrt(-5), sin(0), tan(194), cos(-4.6553705), tan(4), cos(-4), sin(-1), sqrt(-291.0), sin(6), sqrt(-9.381581), cos(-9.940), tan(17.17), cos(-9), cos(-24.19), sin(-0), sqrt(-22), sqrt(1.55), tan(-8.92), sqrt(-0), sqrt(-7), cos(3), sqrt(19), tan(0), tan(4.9), tan(8.0), sin(19), tan(-7.5), tan(5.8), cos(3.536), sqrt(19), cos(23), cos(5.7), sin(8.4), cos(-5.3678), tan(-6), tan(9.18), sin(-0), sin(9), cos(-2.5), cos(133.8296), sin(5), tan(-0.5), sin(-3.31), sqrt(-9.8), cos(-4), sin(-1), cos(-2670.4), sin(4), sqrt(-7.1944), tan(-5), sin(6), sqrt(-3), sqrt(1983.482), tan(-23.9), cos(20), sqrt(-9550), sqrt(-8562), sqrt(17.50), sqrt(-9330640.7), sqrt(-16), sqrt(-61056.0), sin(-49), tan(90), sqrt(-76), cos(2905.4), sin(555.4)\n", + "\n", + "Iteration #6\n", + " Decision Tree:\n", + " if <= 2.5000:\n", + " if == 'sqrt':\n", + " if == '-':\n", + " if <= -93.0000:\n", + " NO_BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= -9058118.5000:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == '-' and > 2.5 and > -93.0\n", + " == 'sqrt' and == '-' and > 2.5\n", + " == 'sqrt' and == '-' and <= 2.5 and <= -93.0\n", + " == 'sqrt' and == '-' and <= 2.5\n", + " <= 2.5 and <= -9058118.5\n", + " <= 2.5 and > -9058118.5\n", + " > 2.5 and <= -9058118.5\n", + " == 'sqrt' and == '-' and <= 2.5 and <= -93.0\n", + " == 'sqrt' and == '-' and > 2.5 and <= -93.0\n", + " == 'sqrt' and == '-' and <= 2.5 and > -93.0\n", + " == 'sqrt' and == '-' and <= 2.5\n", + " == 'sqrt' and <= 2.5\n", + " == 'sqrt' and == '-' and > 2.5\n", + " == 'sqrt' and == '-' and <= 2.5 and > -93.0\n", + " == 'sqrt' and > 2.5\n", + " > 2.5 and > -9058118.5\n", + " New samples:\n", + " tan(108), sqrt(-79), sqrt(313), sqrt(-2655.38086), sqrt(-1598), cos(-277881), sqrt(292368264.0), sqrt(12.6), cos(12.6682), tan(24.2), cos(22.00), sin(2590), tan(-27), sqrt(-24), tan(18), sqrt(-29.6633711), sqrt(21976), sin(94), sin(-6061), tan(47320), cos(40), sin(444.03332), sqrt(7105.8), sin(-62), sqrt(5049798), tan(792.9), sqrt(54), sqrt(-831.9), sin(-71.947), sqrt(84), sin(3691), cos(-71), sqrt(31), sin(-70498), cos(4289241898), cos(67.4), tan(414), tan(-886), cos(-671.54), sin(-4111), tan(60), sin(-5061.7), tan(-63), sqrt(5482508), tan(-94.26), sin(97.2), cos(81931), sin(39.780), tan(-843.1), sqrt(-87), tan(327.7), tan(-354619), tan(-381.97), sqrt(-93.91), sin(-80251), cos(48.64), cos(-55), tan(35), tan(-879.82), cos(962.2), tan(-98), sin(-4864.6), tan(-285.57418), sqrt(-596.2), sqrt(-11.4), sqrt(-350162), sqrt(22.8218), sqrt(22.95), sqrt(-15), sqrt(-57.0906), sqrt(-8.36), sqrt(-42.8), sqrt(28.25), sqrt(-7.77), sqrt(17.04), sqrt(-90), sqrt(-7.064), sqrt(-3), sqrt(-3), sin(-29), tan(-29), sqrt(14), cos(-86), tan(66)\n", + "\n", + "Iteration #7\n", + " Decision Tree:\n", + " if <= 2.5000:\n", + " if <= -13.2000:\n", + " if == 'sqrt':\n", + " if <= 93.0000:\n", + " BUG\n", + " else:\n", + " if == '':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '4':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '8':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and == '' and <= 93.0 and > 2.5 and <= -13.199999809265137\n", + " == '8' and > 2.5\n", + " == '4' and <= 2.5 and <= -13.199999809265137\n", + " == '4' and <= 2.5 and > -13.199999809265137\n", + " == 'sqrt' and == '' and <= 93.0 and > 2.5 and <= -13.199999809265137\n", + " == '4' and <= 2.5 and > -13.199999809265137\n", + " == '4' and > 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and > -13.199999809265137\n", + " == 'sqrt' and > 93.0 and <= 2.5 and <= -13.199999809265137\n", + " == '8' and <= 2.5\n", + " == 'sqrt' and > 93.0 and > 2.5 and <= -13.199999809265137\n", + " == '4' and > 2.5 and > -13.199999809265137\n", + " == 'sqrt' and <= 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and == '' and > 93.0 and <= 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and == '' and > 93.0 and <= 2.5 and > -13.199999809265137\n", + " == '4' and <= 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and == '' and > 93.0 and <= 2.5 and > -13.199999809265137\n", + " == 'sqrt' and <= 93.0 and <= 2.5 and > -13.199999809265137\n", + " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and <= -13.199999809265137\n", + " == '8' and <= 2.5\n", + " == 'sqrt' and == '' and > 93.0 and > 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and > -13.199999809265137\n", + " == 'sqrt' and <= 93.0 and > 2.5 and <= -13.199999809265137\n", + " == '4' and > 2.5 and <= -13.199999809265137\n", + " == '4' and > 2.5 and > -13.199999809265137\n", + " == 'sqrt' and > 2.5 and > -13.199999809265137\n", + " == 'sqrt' and == '' and > 93.0 and > 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and > 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and <= 93.0 and <= 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and <= -13.199999809265137\n", + " == 'sqrt' and <= 2.5 and > -13.199999809265137\n", + " == '8' and > 2.5\n", + " == 'sqrt' and == '' and > 93.0 and <= 2.5 and <= -13.199999809265137\n", + " New samples:\n", + " sqrt(-69), cos(67.6), sin(-24.90), cos(107.2), sqrt(-56.0), tan(2056014), cos(-78), sqrt(-3.3), sqrt(3.9), sqrt(-9.37), sqrt(1.11), sqrt(-7.2), sin(17.45), sqrt(35.7969), sqrt(-1.605300), sqrt(14), sqrt(1167.9), sqrt(-8.0), sqrt(20107806.9), sqrt(-17.1), sqrt(-8718.4), sqrt(-988.4), sqrt(-736.34), tan(26408287), sqrt(-55625.089), tan(72), tan(-29.9), sqrt(287560), sqrt(-721), sqrt(-39790), sqrt(-931), cos(-23556), sqrt(-8171), sqrt(991.7864), tan(26815.927), sqrt(-10.9), cos(-1686.31), sqrt(190), sqrt(0), sqrt(48), sqrt(1), sqrt(-2), sqrt(7), sqrt(7), sqrt(-7), sqrt(-2.79), sqrt(47.5), sqrt(6.1), sqrt(-6), sqrt(1), sqrt(6), sqrt(81.02), sqrt(-2.4592), sqrt(-3), sqrt(-3.8), sqrt(4), sqrt(-75.7), sin(15.303), sqrt(-566), cos(-4994.2), sqrt(-43.3372), sqrt(-2264.9658), cos(-95.2), tan(-937.624), sqrt(-1162.64), sqrt(27.23), tan(11), sqrt(78), sqrt(9), sqrt(5), sin(22), sqrt(-69.9), sqrt(-737574), sin(64.6), sin(62), sqrt(-422), sin(-3217), sqrt(-67.1), sin(-17.2), sqrt(-59.48), sqrt(-30.78), sqrt(-14), tan(1551.7), sin(98.3), tan(-23628.3)\n", + "\n", + "Iteration #8\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.7000:\n", + " if <= -93.8900:\n", + " NO_BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " if == '':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '9':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '8':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and > 3.5 and <= -93.89000034332275\n", + " == '9' and == 'sqrt' and > 3.5\n", + " == 'sqrt' and == '' and > 3.5 and <= -12.699999809265137\n", + " == '8' and > 3.5\n", + " == 'sqrt' and == '' and > 3.5 and > -12.699999809265137\n", + " == 'sqrt' and == '' and <= 3.5 and <= -12.699999809265137\n", + " == '9' and == 'sqrt' and <= 3.5\n", + " == '9' and == 'sqrt' and <= 3.5\n", + " == '8' and > 3.5\n", + " == '9' and == 'sqrt' and > 3.5\n", + " == 'sqrt' and == '' and <= 3.5 and <= -12.699999809265137\n", + " == '8' and <= 3.5\n", + " == 'sqrt' and == '' and <= 3.5 and > -12.699999809265137\n", + " == 'sqrt' and == '' and > 3.5 and <= -12.699999809265137\n", + " == 'sqrt' and == '' and > 3.5 and > -12.699999809265137\n", + " == 'sqrt' and > 3.5 and > -93.89000034332275\n", + " == 'sqrt' and <= 3.5 and <= -93.89000034332275\n", + " == 'sqrt' and == '' and <= 3.5 and > -12.699999809265137\n", + " == 'sqrt' and <= 3.5 and > -93.89000034332275\n", + " == '8' and <= 3.5\n", + " New samples:\n", + " sqrt(-877), tan(-54.59), sqrt(-912.1), sqrt(-540.5), sqrt(-7518.99), sqrt(-518), tan(93.18), sqrt(4976), sqrt(-22.6), sin(284029), sin(-115), cos(443), tan(988.6), sqrt(-19), sqrt(-13), sqrt(-29.8), sqrt(-34.87), sqrt(-35), sqrt(9910), cos(2069), cos(321), sqrt(-29.593), sin(35033), sqrt(75), cos(-11), tan(196628.318), cos(38), sqrt(53.56), sqrt(83), sqrt(-98.9935), sqrt(0.7770), sqrt(-3), sqrt(2), sqrt(7.56), sqrt(0), sqrt(3), sqrt(-7), sqrt(72), sqrt(-9231.1301), tan(-1909.0), sqrt(38), sqrt(36.4), sqrt(-15), sqrt(-897.3), cos(-1664.405495), sqrt(-3.7), sqrt(-1), sqrt(-0), sqrt(-8.464), sqrt(-3.04), sqrt(-8), sqrt(2), sqrt(2), sqrt(7.8), sqrt(3.7), sqrt(124), sqrt(-8.058101576), sqrt(-2), sqrt(19), sqrt(9.8), sqrt(9.11), sqrt(5), sqrt(-6.8), sqrt(8.83), sqrt(-36.4), cos(-16.028)\n", + "\n", + "Iteration #9\n", + " Decision Tree:\n", + " if <= -12.2000:\n", + " if <= 37.0000:\n", + " if == 'sqrt':\n", + " if <= 1.0000:\n", + " BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 1.0 and <= 37.0 and <= -12.199999809265137\n", + " == 'sqrt' and <= 37.0 and <= -12.199999809265137\n", + " > 37.0 and > -12.199999809265137\n", + " == 'sqrt' and > 1.0 and > 37.0 and <= -12.199999809265137\n", + " > -12.199999809265137\n", + " == 'sqrt' and > 1.0 and <= 37.0 and > -12.199999809265137\n", + " == 'sqrt' and > 1.0 and <= 37.0 and <= -12.199999809265137\n", + " == 'sqrt' and > 37.0 and > -12.199999809265137\n", + " > 37.0 and <= -12.199999809265137\n", + " <= -12.199999809265137\n", + " == 'sqrt' and <= 1.0 and <= 37.0 and > -12.199999809265137\n", + " == 'sqrt' and > 37.0 and <= -12.199999809265137\n", + " <= 37.0 and <= -12.199999809265137\n", + " == 'sqrt' and <= 37.0 and > -12.199999809265137\n", + " == 'sqrt' and <= 1.0 and > 37.0 and <= -12.199999809265137\n", + " New samples:\n", + " sqrt(-13.5), sqrt(-37), sqrt(-19.14), sqrt(-300), sqrt(-1.0), cos(-4), sin(-5), sin(1.4), cos(0.6), tan(-424), tan(-7), cos(7.1), sin(20), tan(-0.659), cos(-9), cos(2), cos(-692172), sin(2.4), sin(-7), sin(-8), cos(-8.22), tan(1.52662), sin(-1), sin(6.7644), tan(-793.9509), sin(-0), cos(-4864), cos(-6.85), cos(2), tan(-34089940.2), cos(4), tan(9.41), sin(-3.2), sin(8), cos(-102), cos(-0), tan(0), tan(0.873549), sin(8.4), tan(9.137), sin(24.6), tan(-6), sin(2.656), cos(35), sin(-7.928), sin(-83.9), cos(-9), tan(-500.1), cos(-3), cos(-49.3), cos(-8925.31022), cos(5), tan(-67856.0), cos(-1), tan(-8), sin(-876), cos(-45.1), sqrt(3730.49), sqrt(-58.4), sqrt(-1), sqrt(4), tan(-23.4), sqrt(0.06), sqrt(-87), sqrt(9), sqrt(2.76147), cos(-32.1), sqrt(6.3), sqrt(-216559.3), sqrt(-8.10), sqrt(-3.2), sqrt(-2669.0), cos(-37.3), sqrt(5), sqrt(-44.62), sqrt(2), sqrt(-2.47), sqrt(-9602), cos(-23.8), sqrt(-64.83), sqrt(-2.0), cos(8019), sin(-329.2883), sqrt(-66.4), sqrt(1), sin(-8434), tan(-15.12482), sin(1.1), sqrt(-91261.5), sqrt(-783.2), sqrt(-93383)\n", + "\n", + "Iteration #10\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.2000:\n", + " if <= 97.0000:\n", + " BUG\n", + " else:\n", + " if == '3':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '0':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '1':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " <= 3.5\n", + " == 'sqrt' and == '3' and <= 3.5 and > -12.199999809265137 and > 97.0\n", + " == '0' and == 'sqrt' and <= 3.5 and <= -12.199999809265137\n", + " == 'sqrt' and == '1' and <= 3.5\n", + " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and <= 97.0\n", + " == '0' and == 'sqrt' and > 3.5 and > -12.199999809265137\n", + " == '0' and == 'sqrt' and > 3.5 and <= -12.199999809265137\n", + " == 'sqrt' and == '3' and <= 3.5 and > -12.199999809265137 and > 97.0\n", + " == 'sqrt' and > 3.5 and <= -12.199999809265137 and <= 97.0\n", + " == '0' and == 'sqrt' and > 3.5 and <= -12.199999809265137\n", + " == 'sqrt' and <= 3.5 and <= -12.199999809265137 and > 97.0\n", + " == 'sqrt' and > 3.5 and <= -12.199999809265137 and > 97.0\n", + " == '0' and == 'sqrt' and <= 3.5 and > -12.199999809265137\n", + " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and > 97.0\n", + " == '0' and == 'sqrt' and <= 3.5 and > -12.199999809265137\n", + " == 'sqrt' and == '1' and <= 3.5\n", + " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and <= 97.0\n", + " == '0' and == 'sqrt' and <= 3.5 and <= -12.199999809265137\n", + " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and > 97.0\n", + " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and > 97.0\n", + " == 'sqrt' and <= 3.5 and > -12.199999809265137 and <= 97.0\n", + " == 'sqrt' and == '3' and > 3.5 and > -12.199999809265137 and > 97.0\n", + " == 'sqrt' and <= 3.5 and <= -12.199999809265137 and <= 97.0\n", + " == 'sqrt' and == '1' and > 3.5\n", + " == 'sqrt' and == '1' and > 3.5\n", + " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and > 97.0\n", + " == 'sqrt' and == '3' and > 3.5 and > -12.199999809265137 and > 97.0\n", + " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and <= 97.0\n", + " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and <= 97.0\n", + " == '0' and == 'sqrt' and > 3.5 and > -12.199999809265137\n", + " > 3.5\n", + " New samples:\n", + " sqrt(-34), sqrt(162.150), sqrt(-33), cos(-1662.16), cos(-77.879), tan(-43), sqrt(-18.2), tan(-43.28), cos(-67), tan(-91), sqrt(-13), sqrt(62), sin(-74.85), cos(-92), sqrt(-17.381), cos(-73), sqrt(76), sqrt(-608165.2), sqrt(31.4), cos(32179), sin(3079.140644), sqrt(125), sin(-83.295), sqrt(-661.14262), tan(-80.8), sqrt(-13.8), cos(-83), cos(-57.21), sqrt(67.760), sin(-42.129), sqrt(-97921.5), sqrt(-26), cos(-62), tan(-67.1071), tan(-73), sqrt(-42.5), sqrt(-376), sin(-80160.46), sqrt(911), tan(-887.522), cos(-99), sqrt(-43.4), sqrt(843.9), sqrt(-30962.7), sqrt(-87.378), tan(-9682.25), sqrt(7702.1), sqrt(99.2), sqrt(20.936), sqrt(2799), tan(-191), sqrt(-935), cos(-211.3), sqrt(-362.5), sqrt(-16.66), sqrt(-11.945), sin(2131.0), sqrt(-13.3), sqrt(-23), sqrt(-26), sqrt(-19.8), sqrt(-24607), cos(-366288162.6), sqrt(-129164.8), tan(-345), sqrt(-11627.4333), sqrt(-36), sqrt(-51724), sqrt(14.727), sqrt(767.205), sqrt(472547.67), sqrt(300.41), sqrt(-17.5), tan(-63.39), sin(-63.163), sin(72375764), tan(58), tan(17.5525), tan(15), cos(-4478), sin(43.83), tan(64), sin(14), sin(-15), sin(158), tan(-71), tan(-62521), sin(-48.57), tan(-74554), sin(-55), tan(56), sin(-93), cos(99), tan(67), tan(73), cos(-11.7), tan(176.399), cos(68.62), tan(-82), tan(-50), sin(607), cos(-9345.6), tan(-77), sin(183), tan(925.97293), tan(605.54792), tan(-80.5), sqrt(-97.9), sqrt(-8467995767.3), sqrt(99), sqrt(28), sqrt(-71.4626), sin(-15.0865), sqrt(14), sqrt(-61), sqrt(-75.9510), sqrt(-39.67), sqrt(-42), sqrt(6510.264), tan(427.475)\n", + "\n", + "Iteration #11\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= 98.3350:\n", + " BUG\n", + " else:\n", + " if == '9':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 2.5000:\n", + " if <= 4.5000:\n", + " if == '-':\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '7':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " == '7' and > 2.5 and > 3.5\n", + " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", + " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", + " == '9' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and > 98.33499908447266\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", + " > 2.5 and > 4.5\n", + " == '9' and == 'sqrt' and > 3.5 and > -12.47249984741211 and > 98.33499908447266\n", + " == 'sqrt' and <= 3.5\n", + " == '7' and > 2.5 and > 3.5\n", + " == 'sqrt' and <= 3.5\n", + " <= 2.5 and > 4.5\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211 and <= 98.33499908447266\n", + " == '7' and <= 2.5 and > 3.5\n", + " == '9' and == 'sqrt' and > 3.5 and > -12.47249984741211 and > 98.33499908447266\n", + " == '7' and <= 2.5 and <= 3.5\n", + " == '9' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and > 98.33499908447266\n", + " == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", + " == '7' and <= 2.5 and > 3.5\n", + " <= 2.5 and <= 4.5\n", + " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", + " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " == '7' and > 2.5 and <= 3.5\n", + " == '7' and > 2.5 and <= 3.5\n", + " == 'sqrt' and > 3.5\n", + " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", + " == '7' and <= 2.5 and <= 3.5\n", + " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", + " New samples:\n", + " sqrt(24), sin(5951.97), sqrt(317.17), sqrt(-23.3), cos(-36861.3), sqrt(-9283071), sin(-898), sqrt(791), sqrt(-80136), tan(-84659), cos(-6298.35), sqrt(4618.91), sin(319.76351), cos(329.750), tan(397.7), sin(-39.5), cos(-16), sqrt(21.3), sqrt(-78), sqrt(19.36), sin(-590.8348928), sqrt(81947.91), sqrt(-15), tan(76), tan(-180), sqrt(-72), sqrt(33), tan(-61), sqrt(70812), tan(201), sin(318), sin(207.6), sqrt(32227.792), sqrt(31), sqrt(61.31), sqrt(-65.38), sqrt(-44.3), sqrt(-78.0), sqrt(-76), tan(61), cos(-82.1), cos(755.795), tan(-75.1), sin(-42), tan(-71.7), cos(-78102), cos(75), sqrt(-785.4), tan(70.449), sin(52), tan(-73018), sqrt(-22.00), sqrt(-93.14), sqrt(-388510.91857), sqrt(20.8), sqrt(27.0), cos(-16), sqrt(-86.80), sqrt(-78), sqrt(-70), sin(-13), sqrt(-16586), sqrt(-76.6), sqrt(-49.183), sqrt(-174203090.23), sqrt(-2705), sqrt(-6621.887), sqrt(-27.1), tan(-127), sin(239.795058), sqrt(-2292.2), sin(76), sqrt(-78.9), sqrt(-30.9), sqrt(23.7), cos(-29.72), sqrt(-20.83), sqrt(261), tan(78.7), sqrt(108.618), sqrt(-77.10), sin(14.6), tan(-25), sin(-714.20), tan(30605711.935), sqrt(-74.4), sin(69), sqrt(-5805), sqrt(-11.02), sqrt(-10), sqrt(37.448291), sqrt(-5910)\n", + "\n", + "Iteration #12\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= 98.0000:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '2':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '-':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 2.5000:\n", + " if <= 4.5000:\n", + " if == 'sqrt':\n", + " BUG\n", + " else:\n", + " if <= -1.0000:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == '2' and == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " > 2.5 and > 4.5\n", + " == 'sqrt' and == '-' and <= 3.5\n", + " == '2' and == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and <= 98.0 and <= 3.5 and > -12.47249984741211\n", + " == '2' and == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == 'sqrt' and > 98.0 and <= 3.5 and > -12.47249984741211\n", + " <= 2.5 and > 4.5\n", + " > 2.5 and > 3.5\n", + " == '2' and == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == 'sqrt' and > 98.0 and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '-' and <= 3.5\n", + " == 'sqrt' and <= 98.0 and > 3.5 and <= -12.47249984741211\n", + " == '2' and == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " == '2' and == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " == '2' and == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '-' and > 3.5\n", + " == 'sqrt' and > 98.0 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and <= 98.0 and <= 3.5 and <= -12.47249984741211\n", + " <= 2.5 and <= 4.5\n", + " <= 2.5 and > 3.5\n", + " == '2' and == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " > 2.5 and <= 3.5\n", + " == 'sqrt' and == '-' and > 3.5\n", + " New samples:\n", + " sqrt(-4.06), sqrt(-2145.66), sqrt(74), sqrt(0), sqrt(0), sqrt(-0), sqrt(-3), sqrt(-36870.6054), sqrt(-241), sqrt(4), cos(39.4), sqrt(0.7), sqrt(-9), sqrt(-6.4355), sqrt(1.9), sin(81.3), cos(-16), sqrt(-38), sqrt(15.40), sqrt(63), cos(2231.1), sqrt(777), cos(3341), cos(28188), sqrt(14.4), sin(377.6), sqrt(13), sqrt(73453046), sqrt(29), tan(354.30), tan(90), cos(-8451.75), sqrt(63.92), sqrt(-51661.0), cos(1364.9), sqrt(-42.1), sqrt(163), sqrt(-2), sqrt(-2), sqrt(9552), sqrt(264.0), sqrt(-4.2), sqrt(4073.023), sqrt(-9964184), sin(-842.043), sqrt(-69), sqrt(49.842), sqrt(-74.4), cos(-556.05626), sin(-24.46269), sqrt(-38), tan(-3218), tan(-322.4), sqrt(-377), sqrt(-346), tan(-41.6), sqrt(-478), sqrt(-22), tan(-295), cos(-302.20019), sqrt(-18.080), sqrt(-80585.7), sqrt(-764), tan(-124.88), sqrt(-299.9), sqrt(-87.39), sqrt(37), sqrt(-62), sqrt(-56), sin(-15.37), tan(-33), sin(-21.1), tan(82), tan(-59), sqrt(479.30171938), sin(-98), sqrt(681), sqrt(904), sin(-84), sqrt(63.8), cos(-879.4), cos(-80.57), sin(-68), tan(-5374.9), sqrt(60), cos(-905604893), cos(-87.5), tan(-77), sqrt(469.9), cos(150), tan(67)\n", + "\n", + "Iteration #13\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= -98.3350:\n", + " NO_BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 2.5000:\n", + " if == '4':\n", + " if == 'sqrt':\n", + " if == '.':\n", + " NO_BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", + " == 'sqrt' and <= 3.5\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", + " > 2.5 and > 3.5\n", + " == 'sqrt' and <= 3.5\n", + " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", + " == 'sqrt' and > 3.5 and > -98.33499908447266\n", + " == 'sqrt' and <= 3.5 and > -98.33499908447266\n", + " == 'sqrt' and == '4' and == '.' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and <= 3.5 and <= -98.33499908447266\n", + " == '4' and > 2.5 and <= 3.5\n", + " == 'sqrt' and == '4' and > 2.5 and <= 3.5\n", + " == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == '4' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '.' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and > 3.5 and <= -98.33499908447266\n", + " == '4' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and == '.' and > 2.5 and <= 3.5\n", + " <= 2.5 and > 3.5\n", + " == '4' and > 2.5 and > 3.5\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and > 2.5 and > 3.5\n", + " == 'sqrt' and > 3.5\n", + " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '.' and > 2.5 and <= 3.5\n", + " > 2.5 and <= 3.5\n", + " New samples:\n", + " sqrt(-4043.9), sqrt(23.9), sqrt(-57.2), sqrt(92.7), sqrt(-966.5), sqrt(82.169), sqrt(52), sqrt(-30.17), cos(-72), cos(45), sin(-15), sqrt(-91977), sin(43.1), sin(49238.639), cos(-487262.58), sin(-52), tan(46), tan(-50), sqrt(-59), sqrt(1730.33), sqrt(-196.1), sqrt(-50.2), sqrt(136.2), sqrt(34659339.77187), sqrt(-9.1), sqrt(-197155.6), tan(394), cos(295), cos(-183), cos(278), cos(21.56003), cos(26560), sin(-347), cos(31.362191), sin(2973), cos(43.33), sin(-351), tan(26.7), sin(386.5496), sin(-34513.22), sin(291.83), tan(-15), tan(-493.5), sin(-26.14191), cos(-40694127.0), sin(407), sqrt(95), sin(-50), sqrt(27), cos(11), sqrt(-44), sqrt(71), sin(11), sqrt(-8384), sqrt(4.2), sin(9.0), tan(281154417), cos(25), sqrt(-3085.50), sin(72), tan(6.2), sqrt(107899.54), sin(-3238), sin(-3975.7276), sqrt(-278750), sin(-17.8), cos(2.0), cos(-108), sqrt(172.27), cos(-91.1), sqrt(13485.1), sin(15), sin(0.2), sin(-12362.9), sqrt(-207.49), sqrt(-35.65), sqrt(-22.88), sin(-62), sin(-62.26), sqrt(-58.3), sqrt(-402), sqrt(41), sqrt(-41), cos(43), cos(-8790), sqrt(-43), tan(31), sin(32.0), cos(10), sin(-32), sqrt(-82), sqrt(-4611), sqrt(46), sin(28907)\n", + "\n", + "Iteration #14\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= -98.3350:\n", + " NO_BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 2.5000:\n", + " if <= 4.5000:\n", + " if <= 42.0500:\n", + " if <= -0.5000:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " > 2.5 and > 4.5\n", + " == 'sqrt' and <= 3.5\n", + " > 2.5 and > 3.5\n", + " == 'sqrt' and <= 3.5\n", + " <= 2.5 and > 4.5\n", + " == 'sqrt' and > 3.5 and > -98.33499908447266\n", + " == 'sqrt' and <= 3.5 and > -98.33499908447266\n", + " == 'sqrt' and <= 3.5 and <= -98.33499908447266\n", + " == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == 'sqrt' and > 3.5 and <= -98.33499908447266\n", + " <= 2.5 and <= 4.5\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " <= 2.5 and > 3.5\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " > 2.5 and <= 3.5\n", + " == 'sqrt' and > 3.5\n", + " New samples:\n", + " sqrt(25), sin(-884), sqrt(-28.56), tan(-55), cos(13), cos(59.2), tan(8408), cos(4.0), tan(720), sin(8531), sqrt(94), cos(99), tan(-92307), sqrt(-30), sin(-716.63), sqrt(-5.2), sin(8.0), sin(9824.63), sin(-2.1), sin(91.08), sqrt(-73.0), tan(-60.472878), tan(-54.2), tan(77.4), sqrt(-6470.9), tan(69), cos(40.1), cos(-0.1), sqrt(60.4), cos(-670), tan(-7.2), cos(-861211.9), cos(73), sqrt(-677372), cos(63), sqrt(-75.9), sqrt(-8653.07), sqrt(-75), cos(53.869), sin(-52728), sin(-78.490), sin(-735.2), sqrt(96), sqrt(35), sqrt(21.0388), cos(-11379.95), sqrt(1517), sqrt(-15), cos(-197.5), sqrt(71), sqrt(-81482), sin(42), sqrt(-281), sin(-71), sqrt(-589.3708), tan(-13), sin(5175.9)\n", + "\n", + "Iteration #15\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= -98.3350:\n", + " NO_BUG\n", + " else:\n", + " if == '':\n", + " BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " if == '3':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '1':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 4.5000:\n", + " if <= 42.0500:\n", + " if == 'sqrt':\n", + " if == '':\n", + " NO_BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '-':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and == '3' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '3' and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '1' and <= 3.5\n", + " == '-' and > 4.5\n", + " == 'sqrt' and == '3' and > 3.5 and > -12.47249984741211\n", + " == '-' and > 4.5\n", + " == 'sqrt' and == '3' and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and > 3.5 and > -98.33499908447266\n", + " == 'sqrt' and <= 3.5 and > -98.33499908447266\n", + " == 'sqrt' and <= 3.5 and <= -98.33499908447266\n", + " == 'sqrt' and == '1' and <= 3.5\n", + " == 'sqrt' and == '3' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and > 3.5 and <= -98.33499908447266\n", + " == 'sqrt' and == '3' and > 3.5 and > -12.47249984741211\n", + " == '-' and <= 4.5\n", + " == 'sqrt' and == '1' and > 3.5\n", + " == 'sqrt' and == '1' and > 3.5\n", + " == 'sqrt' and == '3' and > 3.5 and <= -12.47249984741211\n", + " == '-' and <= 4.5\n", + " == 'sqrt' and == '3' and <= 3.5 and > -12.47249984741211\n", + " New samples:\n", + " sqrt(-3366.139), sqrt(-929.3), sqrt(-95.6), sqrt(-882), sqrt(-80223), sqrt(-919), sqrt(-702), sqrt(-83), sqrt(-33), sin(-1372), sin(66.8), sqrt(93), cos(-99), sqrt(-381.1), sqrt(91.3), sqrt(-15.5), sqrt(-802.4), tan(-209.715), sqrt(10423.6), tan(-245), sqrt(26.1370), sin(-127), tan(-28479), tan(-37.3), sqrt(-16), sqrt(-776.4), sqrt(3681.77707958), sqrt(58), sqrt(31.1658917), sqrt(937.24518), sqrt(-100.99), tan(7043.9404), sin(55), cos(-62.455837), sin(-82.1), tan(-44.1), cos(4706), tan(46265), tan(-40.19), tan(-13.74), tan(652.3), tan(485), tan(5883.8), cos(-14), tan(-5403.115), sin(72.361), cos(976), cos(52.3460), tan(-92), sin(-70.20074698), cos(-72.6), sin(158.39304), cos(8437792487), sin(59), tan(78), cos(-1311.0), cos(-605431.159), tan(805), cos(961), sin(779.48), tan(59.88), sqrt(-863.03), cos(45), sqrt(2.5), sqrt(4.4), cos(26210.98), sqrt(-2920), sqrt(37.6), sqrt(-6.4), sqrt(5), sqrt(2), sqrt(-6), sqrt(-5.5), sqrt(-2), sqrt(-6), sqrt(3422.5), sqrt(-1.1), sqrt(7.4), sqrt(3.10), sqrt(87), sin(1366), sqrt(1), sqrt(4282), sqrt(-2), sin(29), sqrt(81), sqrt(675.8)\n", + "\n", + "Iteration #16\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= 69.5000:\n", + " if == '3':\n", + " BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '4':\n", + " if <= 42.0500:\n", + " if == 'sqrt':\n", + " if == '-':\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '6':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " == '4' and <= 3.5 and <= 42.04999923706055\n", + " == '6' and == 'sqrt' and == '4' and <= 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", + " == '3' and == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and <= 3.5\n", + " == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", + " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and <= 3.5\n", + " == 'sqrt' and == '4' and == '-' and > 3.5 and > 42.04999923706055\n", + " == '4' and > 3.5 and > 42.04999923706055\n", + " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", + " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", + " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and <= 3.5 and > 42.04999923706055\n", + " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == '6' and == 'sqrt' and == '4' and <= 3.5 and > 42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", + " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and <= 3.5 and > 42.04999923706055\n", + " == '4' and > 3.5\n", + " == '6' and == 'sqrt' and == '4' and > 3.5 and > 42.04999923706055\n", + " == '3' and == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", + " == '4' and <= 3.5 and > 42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", + " == '3' and == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", + " == '6' and == 'sqrt' and == '4' and > 3.5 and > 42.04999923706055\n", + " == '4' and <= 3.5\n", + " == '6' and == 'sqrt' and == '4' and > 3.5 and <= 42.04999923706055\n", + " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == '3' and == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " == '6' and == 'sqrt' and == '4' and <= 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and > 3.5\n", + " == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", + " == '4' and > 3.5\n", + " == '4' and > 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", + " == '6' and == 'sqrt' and == '4' and > 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and > 3.5 and > 42.04999923706055\n", + " == '6' and == 'sqrt' and == '4' and <= 3.5 and > 42.04999923706055\n", + " New samples:\n", + " sqrt(23.4), cos(14.04826), sqrt(27), cos(-12), sqrt(15.79), sin(20.9), tan(19), sin(-32), cos(-21.1006), sqrt(-34), sqrt(-39), sqrt(-21), sqrt(-18), sin(-37), sin(11.28012), cos(-35.7), tan(41), tan(35.8), tan(-13.9), cos(41), cos(-15), sin(31.4), sin(-24), sqrt(13.7), sqrt(25), sqrt(-53), sqrt(2401.6), sqrt(-64), sqrt(134), sqrt(303), sqrt(-436.1734), sqrt(-29.3), sin(-322), sqrt(885), sqrt(783.258), sqrt(515.2), sqrt(56880), sqrt(92), tan(44), sin(440.9), tan(-46), sin(17744.0087), sqrt(87.64), cos(1770), sqrt(31841.333794), sqrt(75.65), tan(320), sqrt(35), cos(25097), sqrt(22), sqrt(-276), cos(278222), sqrt(903), sin(315810.7), cos(137.1), sqrt(93853), sqrt(87.5), tan(2966), sqrt(2.9), sqrt(3.2), sqrt(6.61479), sqrt(5), sqrt(0), sqrt(9.8), sqrt(1202.9), sqrt(10459.7275), cos(12), sqrt(6.47389), sqrt(-1), sqrt(-7), sqrt(-18), sqrt(-59.0), sqrt(-95), sqrt(-28.8), sqrt(-8.3), sqrt(-7.638), sqrt(-779), sqrt(-89.1), sqrt(-3), cos(33), sqrt(5.36), sqrt(21), sqrt(-13.197), cos(-2087.5), sqrt(-6783), cos(-47), sqrt(41762), sin(-254.4), sqrt(-81.20), sqrt(-871), sqrt(-139), sqrt(19.41), sqrt(34), sqrt(-54), sqrt(-135), cos(-31.0), tan(-22.747), sin(-33.947), sqrt(69), tan(2102), tan(20319.133), cos(-324.94), sin(108), sin(-41.6), sqrt(21), sqrt(-2.1489), sqrt(-7), sqrt(-14385), sqrt(-4.5), tan(-12.2), cos(-39), cos(-11.948383), sin(-11), sin(-21.57), sqrt(-150.074), sqrt(-30), sqrt(187), tan(-42.3), cos(-46.33), sqrt(-46103561), sin(432), sqrt(355529), cos(-48409), tan(144), sqrt(-145.280), tan(-3115), sin(-3478861), cos(4244), sqrt(487), sqrt(-34.2), sqrt(-43.30530), cos(-44), sin(-61.4), sqrt(-14.24), sqrt(-14), cos(-43.0), cos(3480.2853), sin(-42), sqrt(-267.5), sqrt(-865474.4), sqrt(-19615), cos(36.3), sqrt(-44), sqrt(61.600), sqrt(5), sqrt(70), sqrt(9.5), sqrt(8.9), sqrt(28), sqrt(3.15), sqrt(7.4351), sqrt(6.5), sqrt(-1.0), sqrt(-22680.9), cos(-18), cos(-37), sqrt(-2.67), cos(-11.85), sqrt(-6.76), sqrt(12), sqrt(-7), sqrt(-6.1), sqrt(-0), sqrt(-6), sqrt(-338), sin(804.3), sqrt(-89.9), sqrt(-718), tan(485), sin(-4589), tan(45), tan(499.3005591), cos(-4947), tan(-47.54), sin(-45.6), tan(-49.800), tan(-3228.3704), sqrt(-475.9), tan(-160), sqrt(-667796.36), tan(-1630.02), sin(-246.7), cos(380718.31), tan(3320), sqrt(13), sqrt(-216.93), sqrt(55123161.8), sqrt(5930.3), sqrt(13), tan(-41.476), sqrt(-4881), tan(1966), sin(42.6), cos(-269.92017167), cos(-3736)\n", + "\n", + "Iteration #17\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= 70.3300:\n", + " if == '8':\n", + " BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '2':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 2.5000:\n", + " if <= 4.5000:\n", + " if == 'sqrt':\n", + " if <= 42.0500:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '5':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == '5' and <= 2.5 and <= 4.5\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " == '2' and == 'sqrt' and > 3.5\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", + " == '5' and <= 2.5 and > 4.5\n", + " == '8' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211 and > 70.32999801635742\n", + " == '2' and == 'sqrt' and <= 3.5\n", + " == '5' and > 2.5 and <= 4.5\n", + " == '2' and == 'sqrt' and > 3.5\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", + " > 2.5 and > 3.5\n", + " == '8' and == 'sqrt' and > 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", + " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", + " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", + " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", + " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", + " == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == '5' and > 2.5 and > 4.5\n", + " == '5' and <= 2.5 and <= 4.5\n", + " == '8' and == 'sqrt' and > 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", + " == '5' and <= 2.5 and > 4.5\n", + " == '8' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", + " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", + " == '5' and > 2.5 and <= 4.5\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", + " <= 2.5 and > 3.5\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " > 2.5 and <= 3.5\n", + " == '5' and > 2.5 and > 4.5\n", + " == '2' and == 'sqrt' and <= 3.5\n", + " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", + " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", + " New samples:\n", + " tan(-25.05), sqrt(-272415), cos(-11), sin(-395.825), tan(-5.1), sin(-31), sin(-20), sin(-35), sqrt(1029.1289), cos(42), sqrt(-36.47), sqrt(-75), sqrt(-758.32), sqrt(81.5778), sin(-9035.8), sqrt(-65965), sqrt(-62), tan(-7176.59), sqrt(92), cos(775.0449), sqrt(-58.45), sqrt(9522.34), cos(641375.3), sqrt(-10), cos(120.549), sqrt(35), tan(333), tan(323196), sqrt(94.91780), sqrt(8267), sqrt(17.23), sin(1822.170491), sin(461156.7), sin(97.89), sqrt(-98), sqrt(-868), sqrt(62), sqrt(-332425415.94), sqrt(-898), cos(-38480.678), sqrt(-87658338.049), sqrt(-82), sqrt(-16.9), sqrt(859634869.002), cos(-858800972.8), sqrt(-21), sqrt(78), sqrt(57), sqrt(8), cos(58.4), sqrt(8), sqrt(78.051), tan(-92.1), sqrt(36485.5), sqrt(-58), sin(-121.81), sqrt(-15), sqrt(-24.2), sin(-81), sqrt(-174.209), sqrt(-46.464), sqrt(-9612), tan(-391.0), sqrt(511.8), cos(39375), sqrt(141.7), tan(-319.66), sqrt(-17), sqrt(-30), sin(-10494), sqrt(-388), cos(-2966), sqrt(-63.9)\n", + "\n", + "Iteration #18\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= 69.5000:\n", + " if == '.':\n", + " BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '9':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 2.5000:\n", + " if == '4':\n", + " if == 'sqrt':\n", + " if <= -42.0500:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '-':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '1':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '.' and > 69.5 and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", + " == '9' and == 'sqrt' and > 3.5\n", + " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and > -42.04999923706055\n", + " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and <= -42.04999923706055\n", + " == '1' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", + " == '1' and > 2.5 and > 3.5\n", + " == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and > 2.5 and > 3.5 and <= -42.04999923706055\n", + " == '1' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '.' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", + " == '1' and > 2.5 and <= 3.5\n", + " == '1' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and == '.' and > 69.5 and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", + " == '9' and == 'sqrt' and <= 3.5\n", + " == '9' and == 'sqrt' and <= 3.5\n", + " == '4' and > 2.5 and <= 3.5\n", + " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '-' and <= 2.5 and <= 3.5\n", + " == '9' and == 'sqrt' and > 3.5\n", + " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and <= -42.04999923706055\n", + " == 'sqrt' and == '4' and > 2.5 and > 3.5 and > -42.04999923706055\n", + " == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and > 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and > -42.04999923706055\n", + " == '1' and > 2.5 and <= 3.5\n", + " == 'sqrt' and == '.' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", + " == '4' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '-' and > 2.5 and <= 3.5\n", + " == '4' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", + " == '1' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and == '-' and > 2.5 and <= 3.5\n", + " == '4' and > 2.5 and > 3.5\n", + " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", + " == '1' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", + " == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and > -42.04999923706055\n", + " == 'sqrt' and == '4' and == '-' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and <= -42.04999923706055\n", + " New samples:\n", + " sin(192.95), tan(351.019113), sin(36824.87199691), sqrt(99.3), sin(115.200), sqrt(3066), sqrt(22.4), sqrt(172), tan(91.2), tan(-95), tan(-53), cos(-10), cos(-656.76), tan(71), tan(-78.9), cos(-69.5), cos(-923209871), cos(-504.645), cos(-50.683), cos(-625.04890), sqrt(-84), sqrt(-15.2), sqrt(-0.08), sqrt(29), sqrt(64.7), sqrt(9.304), sqrt(-8.899), sqrt(-0.1), sqrt(-9.9), sqrt(-25.8), sqrt(-3.5), sqrt(5.3), sqrt(-9.51), sqrt(-4.2), sqrt(2.38520), cos(-10.2), tan(39.9), tan(28.81), cos(-4618.601), tan(-414), cos(-4288), tan(-468.638917), tan(-996), sqrt(-2500.86), sqrt(0), tan(15), sqrt(3), sqrt(-1), sqrt(3), sqrt(6), sqrt(49), sqrt(-5), sqrt(-4), sqrt(11918.67), sqrt(-7.0), sin(22), cos(20), sqrt(1896.76547), sqrt(1894.6), sqrt(-50), sqrt(-43), sqrt(-387), sqrt(70), tan(-407.31), tan(61.3), tan(-58.212), sqrt(-73.12525), sin(11), tan(-786.16), sqrt(-7.1), sin(60), sqrt(50.2), cos(-52.367167982), cos(82), tan(-69), tan(-5761), cos(-56405423), sqrt(-438.3), tan(437.995), cos(46.7), sin(-97), sin(-89.2), cos(-56.32), tan(-66), cos(-833.6), tan(71.07), sqrt(-62.5), sqrt(20133.9), sqrt(-2978), sqrt(71), cos(318), cos(2330), sqrt(-597), sin(-4325), cos(-402.42), tan(-45.5), cos(-4963), tan(-44638.1), sin(-4575), sqrt(72), sqrt(-45.3689), sqrt(-38107.0), sqrt(-260.7), sqrt(17), sqrt(-33258.0504), tan(-18), tan(-2.2), tan(24), sin(16.6), sin(-23), tan(-258), sin(16.0536), tan(14.44), sqrt(5.2), sin(31), cos(72), sin(7.0), sqrt(2883.08), sqrt(-505.7), sqrt(1174.1), cos(-67.874269), cos(-195.5), tan(10), tan(375088653.81), tan(42.13), tan(-11), sin(-31), cos(-96.24), sqrt(-38), sin(-5002), sin(-90), cos(-62), sqrt(-8022), cos(-498660.818237), sqrt(-840157), sqrt(410.8776), sqrt(-7601.716), sqrt(-7495.6), sqrt(415324.30), sqrt(-23.35), sqrt(5715.2), sqrt(8.1), tan(70), sqrt(810.59), sqrt(85), sqrt(69), tan(80.2), sqrt(-4.0), sqrt(-7.2), sqrt(595), tan(2846), sqrt(-46), tan(60), cos(-206120.00), sin(-2037.2), sin(-242), cos(-366.7), tan(-32.4), cos(-29.9), tan(-353.4), sin(-43.8393117), cos(-115.03), cos(-407), cos(-192247), cos(-34248), cos(-21958118.2), cos(-18.4), tan(-296.98), sqrt(-20), tan(6055.13141), sin(32), sin(69.6), sin(50.6), tan(5.0), tan(852.71), sin(99), sin(77), tan(92.9), tan(7124.5170), sqrt(91), sin(581357), sin(769.930), sin(-25.147903), cos(41), tan(81), sin(-51), sqrt(123967528.815), tan(12.2), sin(-31.39), sqrt(24.1), sqrt(-2102.02), sin(0.1), sqrt(-128.43), sqrt(-99), sin(-206), sin(-1314), tan(-146), sin(-314), cos(42.38088), sin(-41), tan(47), sin(4598.9), tan(429), tan(46.4), sin(48.35), sin(4013.07), sqrt(-38.6), tan(20.843), tan(42.538), cos(41.7), tan(29832), sin(25713.38), cos(27), sin(499), sin(16513), sin(-95.6), sqrt(-96), tan(457.38), sin(93.24), sin(-95), cos(-630831020460.5007516), sin(-76.318), sqrt(88), cos(-68627.9), cos(-95), sqrt(5804.9), sin(-97.8), cos(-6682.715), sin(-455), tan(-888.6), tan(-889.0), sqrt(-2375), sqrt(48), tan(11), cos(32), sqrt(-427), sqrt(-3823)\n", + "\n", + "Iteration #19\n", + " Decision Tree:\n", + " if <= 3.5000:\n", + " if == 'sqrt':\n", + " if <= -12.4725:\n", + " if <= -70.3300:\n", + " NO_BUG\n", + " else:\n", + " if == '.':\n", + " BUG\n", + " else:\n", + " BUG\n", + " else:\n", + " if == '.':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '0':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if <= 2.5000:\n", + " if == '4':\n", + " if == 'sqrt':\n", + " if <= 42.0500:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '3':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == '3' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and == '.' and > 3.5 and <= -12.47249984741211\n", + " == '3' and > 2.5 and <= 3.5\n", + " == 'sqrt' and <= 3.5 and <= -70.32999801635742\n", + " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '.' and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '.' and <= 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and > 42.04999923706055\n", + " == '3' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '.' and > 3.5 and > -12.47249984741211\n", + " == '0' and == 'sqrt' and <= 3.5\n", + " == '3' and <= 2.5 and > 3.5\n", + " == '3' and > 2.5 and <= 3.5\n", + " == '3' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and > 42.04999923706055\n", + " == '3' and <= 2.5 and <= 3.5\n", + " == '3' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and > 2.5 and <= 3.5\n", + " == '4' and > 2.5 and <= 3.5\n", + " == 'sqrt' and == '.' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and == '.' and > 3.5 and > -12.47249984741211\n", + " == 'sqrt' and == '.' and <= 3.5 and <= -12.47249984741211\n", + " == 'sqrt' and > 3.5 and > -70.32999801635742\n", + " == '4' and <= 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and > 2.5 and > 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '4' and > 2.5 and > 3.5 and > 42.04999923706055\n", + " == '0' and == 'sqrt' and > 3.5\n", + " == '4' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and <= 42.04999923706055\n", + " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and <= 42.04999923706055\n", + " == '4' and > 2.5 and > 3.5\n", + " == '0' and == 'sqrt' and <= 3.5\n", + " == '0' and == 'sqrt' and > 3.5\n", + " == 'sqrt' and == '4' and > 2.5 and > 3.5\n", + " == 'sqrt' and == '4' and <= 2.5 and <= 3.5\n", + " == 'sqrt' and > 3.5 and <= -70.32999801635742\n", + " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and > 42.04999923706055\n", + " == 'sqrt' and <= 3.5 and > -70.32999801635742\n", + " == 'sqrt' and == '.' and > 3.5 and <= -12.47249984741211\n", + " New samples:\n", + " tan(-370.0), sqrt(2.2), sin(-18), sin(80), cos(-246), sqrt(-3582.268), sin(82), sin(32.490), sqrt(-357), sin(82), cos(-284), sin(-16.846), sin(901), sqrt(15), cos(6.1), sin(-1.1), sqrt(-62), sin(-22180.4), tan(-91), sin(402), sqrt(1.2), sqrt(-268.199), sin(1124), sin(-9.2), sqrt(-186.7), sqrt(-77), tan(18838), sqrt(-1330), sqrt(-15), sqrt(29), sqrt(13.4), sqrt(27.5), cos(36), sin(303), sqrt(8), sqrt(37.7), sqrt(-2), sqrt(7), sqrt(-7), sin(38), sqrt(-30486), sin(1124), cos(23657), sqrt(34.3070), sin(328891), sqrt(279.2), sqrt(51), sqrt(-498506.99), sqrt(-4459), sqrt(-433187), sqrt(-417), tan(-4286300), cos(-51), sin(71.1), sqrt(-0.2), tan(76.7655), tan(881.4), cos(53.3187), cos(9977.78), sqrt(9.573), sqrt(-10.4), sqrt(1.0), cos(6927.21), sqrt(-2.104), cos(785.0), sqrt(66), sqrt(-1.279), sqrt(97), sqrt(440), tan(26.5), tan(-92), sqrt(355.78), tan(-3.1), cos(56584.31), sqrt(495.3), cos(54.3), cos(-59.36), sqrt(-80.0), cos(675.293734945), tan(-937), tan(81), sin(81), sin(405), tan(-4881), sin(-49.4), sin(72), sin(80), tan(-448), sqrt(-44.2), sqrt(47.6), sin(2536), sin(33.0807), sin(23.3), sqrt(236423), sin(-491.18), sin(176132), sin(-231), cos(-3473.633), cos(-13.31), tan(1106.7), sin(-4769.85), cos(2126), sin(-45.70), cos(-481.46), cos(446.4), sin(-19.4), sin(26), sin(16), tan(-186.6), sin(-15), tan(155), tan(-17.7969), sqrt(-261277), sqrt(55), sqrt(-13893.43), sqrt(59), sqrt(-51), sqrt(431.98), sqrt(-45), sqrt(927), sqrt(99), sin(-442), cos(47.5), sqrt(-53), sqrt(-72852.5), cos(-43652.9), tan(-483), sin(-45.4), tan(97), sin(21), sqrt(-41.359), sqrt(-8.2), sqrt(-38), sqrt(-27.4), cos(-42), sqrt(-13), sqrt(92), sqrt(-9.1), cos(-6965642), cos(-140.977), cos(-60), cos(-4130.7), tan(21.586), cos(-118.68), cos(-15.0), cos(-43839.03), tan(-25), tan(43.21), sin(-405.11), cos(-134), cos(-154), sin(-7.2), tan(-0.1), tan(1074), tan(-45828.2), tan(-279.30), cos(-71), tan(-365.7), cos(-4832), sin(-9.1), sqrt(-88.6), sqrt(373754957.4), sqrt(1432.8), sqrt(-4931470.6), sqrt(-459), sqrt(103024), sqrt(381.28), sqrt(-91.2139)\n", + "\n", + "Iteration #20\n", + " Decision Tree:\n", + " if <= 42.0500:\n", + " if <= -12.6000:\n", + " if == 'sqrt':\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == 'cos':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " if == '5':\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "\n", + " New input specifications:\n", + " == 'cos' and <= -12.599999904632568 and <= 42.04999923706055\n", + " == 'sqrt' and > -12.599999904632568 and <= 42.04999923706055\n", + " == 'cos' and > -12.599999904632568 and <= 42.04999923706055\n", + " == 'cos' and <= -12.599999904632568 and > 42.04999923706055\n", + " == 'sqrt' and <= -12.599999904632568 and <= 42.04999923706055\n", + " == 'cos' and <= -12.599999904632568 and > 42.04999923706055\n", + " == 'sqrt' and > -12.599999904632568 and > 42.04999923706055\n", + " == 'cos' and > -12.599999904632568 and > 42.04999923706055\n", + " == 'sqrt' and <= -12.599999904632568 and <= 42.04999923706055\n", + " == 'sqrt' and > -12.599999904632568 and > 42.04999923706055\n", + " == 'cos' and <= -12.599999904632568 and <= 42.04999923706055\n", + " == 'cos' and > -12.599999904632568 and > 42.04999923706055\n", + " == '5' and > 42.04999923706055\n", + " == 'cos' and > -12.599999904632568 and <= 42.04999923706055\n", + " == '5' and <= 42.04999923706055\n", + " == 'sqrt' and <= -12.599999904632568 and > 42.04999923706055\n", + " == '5' and <= 42.04999923706055\n", + " == 'sqrt' and > -12.599999904632568 and <= 42.04999923706055\n", + " == '5' and > 42.04999923706055\n", + " == 'sqrt' and <= -12.599999904632568 and > 42.04999923706055\n", + " New samples:\n", + " sqrt(-39.8), sin(-5), cos(0), sin(-815), sin(-24.3), cos(-93), tan(9645), tan(80), sqrt(-24), sqrt(774159107), cos(-32), cos(47), tan(8315.418), tan(31.2361), sqrt(-7.26), sin(-72359), sin(-5.2), sqrt(-8), sqrt(-109), sqrt(-94894.841)\n" + ] + } + ], "source": [ "alhazen = Alhazen(sample_runner, CALC_GRAMMAR, initial_sample_list,\n", " verbose=True,\n", @@ -3250,9 +5512,433 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 218, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
DecisionTreeClassifier(class_weight={'BUG': 0.010638297872340425,\n",
+       "                                     'NO_BUG': 0.0005595970900951316},\n",
+       "                       max_depth=5)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "DecisionTreeClassifier(class_weight={'BUG': 0.010638297872340425,\n", + " 'NO_BUG': 0.0005595970900951316},\n", + " max_depth=5)" + ] + }, + "execution_count": 218, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "alhazen.last_tree()" ] @@ -3266,9 +5952,139 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 219, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "Tree\n", + "\n", + "\n", + "\n", + "0\n", + "\n", + "<value> <= 42.05\n", + "gini = 0.5\n", + "samples = 1881\n", + "value = [1.0, 1.0]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "1\n", + "\n", + "<term> <= -12.6\n", + "gini = 0.396\n", + "samples = 761\n", + "value = [1.0, 0.373]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "0->1\n", + "\n", + "\n", + "True\n", + "\n", + "\n", + "\n", + "8\n", + "\n", + "gini = 0.0\n", + "samples = 1120\n", + "value = [0.0, 0.627]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "0->8\n", + "\n", + "\n", + "False\n", + "\n", + "\n", + "\n", + "2\n", + "\n", + "<function> == 'sqrt' <= 0.5\n", + "gini = 0.088\n", + "samples = 180\n", + "value = [1.0, 0.048]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "1->2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "5\n", + "\n", + "gini = 0.0\n", + "samples = 581\n", + "value = [0.0, 0.325]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "1->5\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "3\n", + "\n", + "gini = 0.0\n", + "samples = 86\n", + "value = [0.0, 0.048]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "2->3\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "4\n", + "\n", + "gini = -0.0\n", + "samples = 94\n", + "value = [1.0, 0.0]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "2->4\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 219, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "alhazen.show_decision_tree()" ] @@ -3282,9 +6098,27 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 220, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "if <= 42.0500:\n", + " if <= -12.6000:\n", + " if == 'sqrt':\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "else:\n", + " NO_BUG\n", + "\n" + ] + } + ], "source": [ "print(alhazen.friendly_decision_tree())" ] @@ -3300,7 +6134,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 221, "metadata": {}, "outputs": [], "source": [ @@ -3309,9 +6143,30 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 222, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "def task_sqrt(x):\n", + " \"\"\"Computes the square root of x, using the Newton-Raphson method\"\"\"\n", + " if x <= -12 and x >= -42:\n", + " x = 0 # Guess where the bug is :-)\n", + " else:\n", + " x = 1\n", + " x = max(x, 0)\n", + " approx = None\n", + " guess = x / 2\n", + " while approx != guess:\n", + " approx = guess\n", + " guess = (approx + x / approx) / 2\n", + " return approx\n", + "\n" + ] + } + ], "source": [ "\n", "print(inspect.getsource(task_sqrt))" @@ -3343,7 +6198,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 223, "metadata": {}, "outputs": [], "source": [ @@ -3361,7 +6216,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 224, "metadata": {}, "outputs": [], "source": [ @@ -3377,9 +6232,170 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 225, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "Tree\n", + "\n", + "\n", + "\n", + "0\n", + "\n", + "<lead-digit> <= 4.5\n", + "gini = 0.5\n", + "samples = 1389\n", + "value = [1.0, 1.0]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "1\n", + "\n", + "<function> == 'sqrt' <= 0.5\n", + "gini = 0.338\n", + "samples = 423\n", + "value = [1.0, 0.274]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "0->1\n", + "\n", + "\n", + "True\n", + "\n", + "\n", + "\n", + "10\n", + "\n", + "gini = -0.0\n", + "samples = 966\n", + "value = [0.0, 0.726]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "0->10\n", + "\n", + "\n", + "False\n", + "\n", + "\n", + "\n", + "2\n", + "\n", + "gini = -0.0\n", + "samples = 223\n", + "value = [0.0, 0.168]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "1->2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "3\n", + "\n", + "<value> <= 41.736\n", + "gini = 0.174\n", + "samples = 200\n", + "value = [1.0, 0.107]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "1->3\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "4\n", + "\n", + "<term> <= -11.5\n", + "gini = 0.067\n", + "samples = 106\n", + "value = [1.0, 0.036]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "3->4\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "9\n", + "\n", + "gini = -0.0\n", + "samples = 94\n", + "value = [0.0, 0.071]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "3->9\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "5\n", + "\n", + "gini = 0.0\n", + "samples = 58\n", + "value = [1.0, 0.0]\n", + "class = BUG\n", + "\n", + "\n", + "\n", + "4->5\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "8\n", + "\n", + "gini = -0.0\n", + "samples = 48\n", + "value = [0.0, 0.036]\n", + "class = NO_BUG\n", + "\n", + "\n", + "\n", + "4->8\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 225, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "alhazen.show_decision_tree()" ] @@ -3418,9 +6434,30 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 226, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "if <= 4.5000:\n", + " if == 'sqrt':\n", + " if <= 41.7355:\n", + " if <= -11.5000:\n", + " BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + " else:\n", + " NO_BUG\n", + "else:\n", + " NO_BUG\n", + "\n" + ] + } + ], "source": [ "print(alhazen.friendly_decision_tree())" ] @@ -3435,7 +6472,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 227, "metadata": {}, "outputs": [], "source": [ @@ -3444,9 +6481,30 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 228, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "def task_sqrt(x):\n", + " \"\"\"Computes the square root of x, using the Newton-Raphson method\"\"\"\n", + " if x <= -12 and x >= -42:\n", + " x = 0 # Guess where the bug is :-)\n", + " else:\n", + " x = 1\n", + " x = max(x, 0)\n", + " approx = None\n", + " guess = x / 2\n", + " while approx != guess:\n", + " approx = guess\n", + " guess = (approx + x / approx) / 2\n", + " return approx\n", + "\n" + ] + } + ], "source": [ "print(inspect.getsource(task_sqrt))" ] @@ -3523,7 +6581,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.8" + "version": "3.12.4" }, "toc": { "base_numbering": 1, From 41badab5e14af978a55dde629320ee2c5ee18388 Mon Sep 17 00:00:00 2001 From: Laura Date: Thu, 16 Jan 2025 17:05:33 +0100 Subject: [PATCH 2/2] Changed imports for numpy isnan --- notebooks/Alhazen.ipynb | 3415 ++------------------------------------- 1 file changed, 174 insertions(+), 3241 deletions(-) diff --git a/notebooks/Alhazen.ipynb b/notebooks/Alhazen.ipynb index a5ccb1e3..7acc7c45 100644 --- a/notebooks/Alhazen.ipynb +++ b/notebooks/Alhazen.ipynb @@ -22,7 +22,7 @@ }, { "cell_type": "code", - "execution_count": 117, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -47,7 +47,7 @@ }, { "cell_type": "code", - "execution_count": 118, + "execution_count": null, "metadata": { "button": false, "new_sheet": false, @@ -209,7 +209,7 @@ }, { "cell_type": "code", - "execution_count": 119, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -218,7 +218,7 @@ }, { "cell_type": "code", - "execution_count": 120, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -237,7 +237,7 @@ }, { "cell_type": "code", - "execution_count": 121, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -248,7 +248,7 @@ }, { "cell_type": "code", - "execution_count": 122, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -294,7 +294,7 @@ }, { "cell_type": "code", - "execution_count": 123, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -343,7 +343,7 @@ }, { "cell_type": "code", - "execution_count": 124, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -361,7 +361,7 @@ }, { "cell_type": "code", - "execution_count": 125, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -370,7 +370,7 @@ }, { "cell_type": "code", - "execution_count": 126, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -385,7 +385,7 @@ }, { "cell_type": "code", - "execution_count": 127, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -394,7 +394,7 @@ }, { "cell_type": "code", - "execution_count": 128, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -423,20 +423,9 @@ }, { "cell_type": "code", - "execution_count": 129, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 129, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "sample = \"sqrt(-16)\"\n", "sample_runner(sample)" @@ -451,7 +440,7 @@ }, { "cell_type": "code", - "execution_count": 130, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -469,27 +458,9 @@ }, { "cell_type": "code", - "execution_count": 131, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "name 'undef_function' is not defined\n" - ] - }, - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 131, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "sample_runner(\"undef_function(QUERY)\")" ] @@ -511,7 +482,7 @@ }, { "cell_type": "code", - "execution_count": 132, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -522,7 +493,7 @@ }, { "cell_type": "code", - "execution_count": 133, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -546,7 +517,7 @@ }, { "cell_type": "code", - "execution_count": 134, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -562,74 +533,9 @@ }, { "cell_type": "code", - "execution_count": 135, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "name 'undef_function' is not defined\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
oracle
0BUG
1NO_BUG
2NO_BUG
3UNDEF
\n", - "
" - ], - "text/plain": [ - " oracle\n", - "0 BUG\n", - "1 NO_BUG\n", - "2 NO_BUG\n", - "3 UNDEF" - ] - }, - "execution_count": 135, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "labels = execute_samples(sample_list)\n", "labels" @@ -644,20 +550,9 @@ }, { "cell_type": "code", - "execution_count": 136, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "sqrt(-20) BUG\n", - "cos(2) NO_BUG\n", - "sqrt(-100) NO_BUG\n", - "undef_function(foo) UNDEF\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "for i, row in enumerate(labels['oracle']): print(sample_list[i].ljust(30) + str(row))" ] @@ -671,62 +566,9 @@ }, { "cell_type": "code", - "execution_count": 137, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
oracle
0BUG
1NO_BUG
2NO_BUG
\n", - "
" - ], - "text/plain": [ - " oracle\n", - "0 BUG\n", - "1 NO_BUG\n", - "2 NO_BUG" - ] - }, - "execution_count": 137, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "clean_data = labels.drop(labels[labels.oracle.astype(str) == \"UNDEF\"].index)\n", "clean_data" @@ -741,27 +583,9 @@ }, { "cell_type": "code", - "execution_count": 138, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "sqrt(-20) BUG\n", - "cos(2) NO_BUG\n", - "sqrt(-100) NO_BUG\n", - "undef_function(foo) UNDEF\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "name 'undef_function' is not defined\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "oracle = execute_samples(sample_list)\n", "for i, row in enumerate(oracle['oracle']):\n", @@ -784,7 +608,7 @@ }, { "cell_type": "code", - "execution_count": 139, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -800,7 +624,7 @@ }, { "cell_type": "code", - "execution_count": 140, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -816,20 +640,9 @@ }, { "cell_type": "code", - "execution_count": 141, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "cos(-16) NO_BUG\n", - "tan(-16) NO_BUG\n", - "sqrt(-100) NO_BUG\n", - "sqrt(-20.23412431234123) BUG\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "for i, row in enumerate(guess_oracle['oracle']):\n", " print(guess_samples[i].ljust(30) + str(row))" @@ -898,7 +711,7 @@ }, { "cell_type": "code", - "execution_count": 142, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -907,7 +720,7 @@ }, { "cell_type": "code", - "execution_count": 143, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -953,7 +766,7 @@ }, { "cell_type": "code", - "execution_count": 144, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1015,7 +828,7 @@ }, { "cell_type": "code", - "execution_count": 145, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1071,7 +884,7 @@ }, { "cell_type": "code", - "execution_count": 146, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1099,7 +912,7 @@ }, { "cell_type": "code", - "execution_count": 147, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1109,7 +922,7 @@ }, { "cell_type": "code", - "execution_count": 148, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1169,7 +982,7 @@ }, { "cell_type": "code", - "execution_count": 149, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1187,65 +1000,9 @@ }, { "cell_type": "code", - "execution_count": 150, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[exists(),\n", - " exists( == ()),\n", - " exists(),\n", - " exists( == sqrt),\n", - " exists( == tan),\n", - " exists( == cos),\n", - " exists( == sin),\n", - " exists(),\n", - " exists( == -),\n", - " exists( == ),\n", - " exists(),\n", - " exists( == .),\n", - " exists( == ),\n", - " exists(),\n", - " exists( == ),\n", - " exists( == ),\n", - " exists(),\n", - " exists( == ),\n", - " exists( == ),\n", - " exists(),\n", - " exists( == 1),\n", - " exists( == 2),\n", - " exists( == 3),\n", - " exists( == 4),\n", - " exists( == 5),\n", - " exists( == 6),\n", - " exists( == 7),\n", - " exists( == 8),\n", - " exists( == 9),\n", - " exists(),\n", - " exists( == 0),\n", - " exists( == 1),\n", - " exists( == 2),\n", - " exists( == 3),\n", - " exists( == 4),\n", - " exists( == 5),\n", - " exists( == 6),\n", - " exists( == 7),\n", - " exists( == 8),\n", - " exists( == 9),\n", - " num(),\n", - " num(),\n", - " num(),\n", - " num(),\n", - " num(),\n", - " num()]" - ] - }, - "execution_count": 150, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "extract_all_features(CALC_GRAMMAR)" ] @@ -1259,65 +1016,9 @@ }, { "cell_type": "code", - "execution_count": 151, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "['exists()',\n", - " \" == '()'\",\n", - " 'exists()',\n", - " \" == 'sqrt'\",\n", - " \" == 'tan'\",\n", - " \" == 'cos'\",\n", - " \" == 'sin'\",\n", - " 'exists()',\n", - " \" == '-'\",\n", - " \" == ''\",\n", - " 'exists()',\n", - " \" == '.'\",\n", - " \" == ''\",\n", - " 'exists()',\n", - " \" == ''\",\n", - " \" == ''\",\n", - " 'exists()',\n", - " \" == ''\",\n", - " \" == ''\",\n", - " 'exists()',\n", - " \" == '1'\",\n", - " \" == '2'\",\n", - " \" == '3'\",\n", - " \" == '4'\",\n", - " \" == '5'\",\n", - " \" == '6'\",\n", - " \" == '7'\",\n", - " \" == '8'\",\n", - " \" == '9'\",\n", - " 'exists()',\n", - " \" == '0'\",\n", - " \" == '1'\",\n", - " \" == '2'\",\n", - " \" == '3'\",\n", - " \" == '4'\",\n", - " \" == '5'\",\n", - " \" == '6'\",\n", - " \" == '7'\",\n", - " \" == '8'\",\n", - " \" == '9'\",\n", - " '',\n", - " '',\n", - " '',\n", - " '',\n", - " '',\n", - " '']" - ] - }, - "execution_count": 151, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "[f.friendly_name() for f in extract_all_features(CALC_GRAMMAR)]" ] @@ -1339,7 +1040,7 @@ }, { "cell_type": "code", - "execution_count": 152, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1373,170 +1074,9 @@ }, { "cell_type": "code", - "execution_count": 153, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
sampleexists(<start>)exists(<start>@0)exists(<function>)exists(<function>@0)exists(<function>@1)exists(<function>@2)exists(<function>@3)exists(<term>)exists(<term>@0)...exists(<digit>@6)exists(<digit>@7)exists(<digit>@8)exists(<digit>@9)num(<term>)num(<value>)num(<lead-digit>)num(<digit>)num(<integer>)num(<digits>)
0sqrt(-900)111100011...0000-900.00900.009.00.0900.00.0
1sin(24)111000110...000024.0024.002.04.024.04.0
2cos(-3.14)111001011...0000-3.143.14NaN4.03.014.0
\n", - "

3 rows × 47 columns

\n", - "
" - ], - "text/plain": [ - " sample exists() exists(@0) exists() \\\n", - "0 sqrt(-900) 1 1 1 \n", - "1 sin(24) 1 1 1 \n", - "2 cos(-3.14) 1 1 1 \n", - "\n", - " exists(@0) exists(@1) exists(@2) \\\n", - "0 1 0 0 \n", - "1 0 0 0 \n", - "2 0 0 1 \n", - "\n", - " exists(@3) exists() exists(@0) ... \\\n", - "0 0 1 1 ... \n", - "1 1 1 0 ... \n", - "2 0 1 1 ... \n", - "\n", - " exists(@6) exists(@7) exists(@8) exists(@9) \\\n", - "0 0 0 0 0 \n", - "1 0 0 0 0 \n", - "2 0 0 0 0 \n", - "\n", - " num() num() num() num() num() \\\n", - "0 -900.00 900.00 9.0 0.0 900.0 \n", - "1 24.00 24.00 2.0 4.0 24.0 \n", - "2 -3.14 3.14 NaN 4.0 3.0 \n", - "\n", - " num() \n", - "0 0.0 \n", - "1 4.0 \n", - "2 14.0 \n", - "\n", - "[3 rows x 47 columns]" - ] - }, - "execution_count": 153, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "sample_list = [\"sqrt(-900)\", \"sin(24)\", \"cos(-3.14)\"]\n", "collect_features(sample_list, CALC_GRAMMAR)" @@ -1544,7 +1084,7 @@ }, { "cell_type": "code", - "execution_count": 154, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1569,157 +1109,9 @@ }, { "cell_type": "code", - "execution_count": 155, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Features of sqrt(-900):\n", - " exists(): 1\n", - " exists( == ()): 1\n", - " exists(): 1\n", - " exists( == sqrt): 1\n", - " exists( == tan): 0\n", - " exists( == cos): 0\n", - " exists( == sin): 0\n", - " exists(): 1\n", - " exists( == -): 1\n", - " exists( == ): 0\n", - " exists(): 1\n", - " exists( == .): 0\n", - " exists( == ): 1\n", - " exists(): 1\n", - " exists( == ): 1\n", - " exists( == ): 0\n", - " exists(): 1\n", - " exists( == ): 1\n", - " exists( == ): 1\n", - " exists(): 1\n", - " exists( == 1): 0\n", - " exists( == 2): 0\n", - " exists( == 3): 0\n", - " exists( == 4): 0\n", - " exists( == 5): 0\n", - " exists( == 6): 0\n", - " exists( == 7): 0\n", - " exists( == 8): 0\n", - " exists( == 9): 1\n", - " exists(): 1\n", - " exists( == 0): 1\n", - " exists( == 1): 0\n", - " exists( == 2): 0\n", - " exists( == 3): 0\n", - " exists( == 4): 0\n", - " exists( == 5): 0\n", - " exists( == 6): 0\n", - " exists( == 7): 0\n", - " exists( == 8): 0\n", - " exists( == 9): 0\n", - " num(): -900.0\n", - " num(): 900.0\n", - " num(): 9.0\n", - " num(): 0.0\n", - " num(): 900.0\n", - " num(): 0.0\n", - "Features of sin(24):\n", - " exists(): 1\n", - " exists( == ()): 1\n", - " exists(): 1\n", - " exists( == sqrt): 0\n", - " exists( == tan): 0\n", - " exists( == cos): 0\n", - " exists( == sin): 1\n", - " exists(): 1\n", - " exists( == -): 0\n", - " exists( == ): 1\n", - " exists(): 1\n", - " exists( == .): 0\n", - " exists( == ): 1\n", - " exists(): 1\n", - " exists( == ): 1\n", - " exists( == ): 0\n", - " exists(): 1\n", - " exists( == ): 0\n", - " exists( == ): 1\n", - " exists(): 1\n", - " exists( == 1): 0\n", - " exists( == 2): 1\n", - " exists( == 3): 0\n", - " exists( == 4): 0\n", - " exists( == 5): 0\n", - " exists( == 6): 0\n", - " exists( == 7): 0\n", - " exists( == 8): 0\n", - " exists( == 9): 0\n", - " exists(): 1\n", - " exists( == 0): 0\n", - " exists( == 1): 0\n", - " exists( == 2): 0\n", - " exists( == 3): 0\n", - " exists( == 4): 1\n", - " exists( == 5): 0\n", - " exists( == 6): 0\n", - " exists( == 7): 0\n", - " exists( == 8): 0\n", - " exists( == 9): 0\n", - " num(): 24.0\n", - " num(): 24.0\n", - " num(): 2.0\n", - " num(): 4.0\n", - " num(): 24.0\n", - " num(): 4.0\n", - "Features of cos(-3.14):\n", - " exists(): 1\n", - " exists( == ()): 1\n", - " exists(): 1\n", - " exists( == sqrt): 0\n", - " exists( == tan): 0\n", - " exists( == cos): 1\n", - " exists( == sin): 0\n", - " exists(): 1\n", - " exists( == -): 1\n", - " exists( == ): 0\n", - " exists(): 1\n", - " exists( == .): 1\n", - " exists( == ): 0\n", - " exists(): 1\n", - " exists( == ): 0\n", - " exists( == ): 1\n", - " exists(): 1\n", - " exists( == ): 1\n", - " exists( == ): 1\n", - " exists(): 0\n", - " exists( == 1): 0\n", - " exists( == 2): 0\n", - " exists( == 3): 0\n", - " exists( == 4): 0\n", - " exists( == 5): 0\n", - " exists( == 6): 0\n", - " exists( == 7): 0\n", - " exists( == 8): 0\n", - " exists( == 9): 0\n", - " exists(): 1\n", - " exists( == 0): 0\n", - " exists( == 1): 1\n", - " exists( == 2): 0\n", - " exists( == 3): 1\n", - " exists( == 4): 1\n", - " exists( == 5): 0\n", - " exists( == 6): 0\n", - " exists( == 7): 0\n", - " exists( == 8): 0\n", - " exists( == 9): 0\n", - " num(): -3.14\n", - " num(): 3.14\n", - " num(): nan\n", - " num(): 4.0\n", - " num(): 3.0\n", - " num(): 14.0\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "all_features = extract_all_features(CALC_GRAMMAR)\n", "for sample in sample_list:\n", @@ -1745,7 +1137,7 @@ }, { "cell_type": "code", - "execution_count": 156, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1754,248 +1146,9 @@ }, { "cell_type": "code", - "execution_count": 157, - "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "0\n", - "<start>\n", - "\n", - "\n", - "\n", - "1\n", - "<expr>\n", - "\n", - "\n", - "\n", - "0->1\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "2\n", - "<term>\n", - "\n", - "\n", - "\n", - "1->2\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "13\n", - " + \n", - "\n", - "\n", - "\n", - "1->13\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "14\n", - "<expr>\n", - "\n", - "\n", - "\n", - "1->14\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "3\n", - "<factor>\n", - "\n", - "\n", - "\n", - "2->3\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "7\n", - " * \n", - "\n", - "\n", - "\n", - "2->7\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "8\n", - "<term>\n", - "\n", - "\n", - "\n", - "2->8\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "4\n", - "<integer>\n", - "\n", - "\n", - "\n", - "3->4\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "5\n", - "<digit>\n", - "\n", - "\n", - "\n", - "4->5\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "6\n", - "6 (54)\n", - "\n", - "\n", - "\n", - "5->6\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "9\n", - "<factor>\n", - "\n", - "\n", - "\n", - "8->9\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "10\n", - "<integer>\n", - "\n", - "\n", - "\n", - "9->10\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "11\n", - "<digit>\n", - "\n", - "\n", - "\n", - "10->11\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "12\n", - "3 (51)\n", - "\n", - "\n", - "\n", - "11->12\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "15\n", - "<term>\n", - "\n", - "\n", - "\n", - "14->15\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "16\n", - "<factor>\n", - "\n", - "\n", - "\n", - "15->16\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "17\n", - "<integer>\n", - "\n", - "\n", - "\n", - "16->17\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "18\n", - "<digit>\n", - "\n", - "\n", - "\n", - "17->18\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "19\n", - "9 (57)\n", - "\n", - "\n", - "\n", - "18->19\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 157, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# For this example, fix the random seed so that the produced output is deterministic\n", "random.seed(24)\n", @@ -2043,7 +1196,7 @@ }, { "cell_type": "code", - "execution_count": 158, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2067,7 +1220,7 @@ }, { "cell_type": "code", - "execution_count": 159, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2076,7 +1229,7 @@ }, { "cell_type": "code", - "execution_count": 160, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2102,22 +1255,9 @@ }, { "cell_type": "code", - "execution_count": 161, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " ['', '1 + 2']\n", - " [' + ', ' - ', '', '1 + 2', '2']\n", - " [' * ', ' / ', '', '1', '2']\n", - " ['+', '-', '()', '.', '', '1', '2']\n", - " ['', '', '1', '2']\n", - " ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "transformed_grammar = transform_grammar(\"1 + 2\", EXPR_GRAMMAR)\n", "for rule in transformed_grammar:\n", @@ -2166,7 +1306,7 @@ }, { "cell_type": "code", - "execution_count": 162, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2201,7 +1341,7 @@ }, { "cell_type": "code", - "execution_count": 163, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2226,7 +1366,7 @@ }, { "cell_type": "code", - "execution_count": 164, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2255,7 +1395,7 @@ }, { "cell_type": "code", - "execution_count": 165, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2276,7 +1416,7 @@ }, { "cell_type": "code", - "execution_count": 166, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2285,7 +1425,7 @@ }, { "cell_type": "code", - "execution_count": 167, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2299,108 +1439,9 @@ }, { "cell_type": "code", - "execution_count": 168, - "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "Tree\n", - "\n", - "\n", - "\n", - "0\n", - "\n", - "function-sqrt <= 0.5\n", - "gini = 0.408\n", - "samples = 7\n", - "value = [2, 5]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "1\n", - "\n", - "gini = 0.0\n", - "samples = 4\n", - "value = [0, 4]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "0->1\n", - "\n", - "\n", - "True\n", - "\n", - "\n", - "\n", - "2\n", - "\n", - "number <= 13.0\n", - "gini = 0.444\n", - "samples = 3\n", - "value = [2, 1]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "0->2\n", - "\n", - "\n", - "False\n", - "\n", - "\n", - "\n", - "3\n", - "\n", - "gini = 0.0\n", - "samples = 2\n", - "value = [2, 0]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "2->3\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "4\n", - "\n", - "gini = 0.0\n", - "samples = 1\n", - "value = [0, 1]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "2->4\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 168, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "show_decision_tree(clf, vec.get_feature_names_out())" ] @@ -2414,7 +1455,7 @@ }, { "cell_type": "code", - "execution_count": 169, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2423,7 +1464,7 @@ }, { "cell_type": "code", - "execution_count": 170, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2462,24 +1503,9 @@ }, { "cell_type": "code", - "execution_count": 171, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "if function-sqrt:\n", - " if number <= 13.0000:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - "else:\n", - " NO_BUG\n", - "\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "print(friendly_decision_tree(clf, vec.get_feature_names_out()))" ] @@ -2555,7 +1581,7 @@ }, { "cell_type": "code", - "execution_count": 172, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2594,7 +1620,7 @@ }, { "cell_type": "code", - "execution_count": 173, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -2651,132 +1677,18 @@ }, { "cell_type": "code", - "execution_count": 174, - "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "Tree\n", - "\n", - "\n", - "\n", - "0\n", - "\n", - "function-sqrt <= 0.5\n", - "gini = 0.408\n", - "samples = 7\n", - "value = [2, 5]\n", - "class = NO BUG\n", - "\n", - "\n", - "\n", - "1\n", - "\n", - "gini = 0.0\n", - "samples = 4\n", - "value = [0, 4]\n", - "class = NO BUG\n", - "\n", - "\n", - "\n", - "0->1\n", - "\n", - "\n", - "True\n", - "\n", - "\n", - "\n", - "2\n", - "\n", - "number <= 13.0\n", - "gini = 0.444\n", - "samples = 3\n", - "value = [2, 1]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "0->2\n", - "\n", - "\n", - "False\n", - "\n", - "\n", - "\n", - "3\n", - "\n", - "gini = 0.0\n", - "samples = 2\n", - "value = [2, 0]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "2->3\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "4\n", - "\n", - "gini = 0.0\n", - "samples = 1\n", - "value = [0, 1]\n", - "class = NO BUG\n", - "\n", - "\n", - "\n", - "2->4\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 174, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "graph" ] }, { "cell_type": "code", - "execution_count": 175, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "if function-sqrt:\n", - " if number <= 13.0000:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - "else:\n", - " NO_BUG\n", - "\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "print(friendly_decision_tree(clf, feature_names, class_names = ['NO_BUG', 'BUG']))" ] @@ -2797,7 +1709,7 @@ }, { "cell_type": "code", - "execution_count": 176, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3055,7 +1967,7 @@ }, { "cell_type": "code", - "execution_count": 177, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3143,7 +2055,7 @@ }, { "cell_type": "code", - "execution_count": 178, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3152,7 +2064,7 @@ }, { "cell_type": "code", - "execution_count": 179, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3201,7 +2113,7 @@ }, { "cell_type": "code", - "execution_count": 180, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3225,7 +2137,7 @@ }, { "cell_type": "code", - "execution_count": 181, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3242,19 +2154,9 @@ }, { "cell_type": "code", - "execution_count": 182, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Path 0: function-sqrt <= 0.5, is_bug: False\n", - "Path 1: function-sqrt > 0.5 number <= 13.0, is_bug: True\n", - "Path 2: function-sqrt > 0.5 number > 13.0, is_bug: False\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "for count, path in enumerate(all_paths):\n", " string_path = path.get(0).get_str_ext()\n", @@ -3301,7 +2203,7 @@ }, { "cell_type": "code", - "execution_count": 183, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3327,19 +2229,9 @@ }, { "cell_type": "code", - "execution_count": 184, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Path 0: function-sqrt > 0.5, is_bug: False\n", - "Path 1: function-sqrt <= 0.5 number > 13.0, is_bug: True\n", - "Path 2: function-sqrt <= 0.5 number <= 13.0, is_bug: False\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "for count, path in enumerate(all_paths):\n", " negated_string_path = path.get(0).get_neg_ext(bounds)[0]\n", @@ -3365,7 +2257,7 @@ }, { "cell_type": "code", - "execution_count": 185, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3412,7 +2304,7 @@ }, { "cell_type": "code", - "execution_count": 186, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3421,22 +2313,9 @@ }, { "cell_type": "code", - "execution_count": 187, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "function-sqrt > 0.5, number <= 13.0\n", - "function-sqrt > 0.5, number > 13.0\n", - "function-sqrt > 0.5\n", - "function-sqrt <= 0.5, number > 13.0\n", - "function-sqrt <= 0.5, number <= 13.0\n", - "function-sqrt <= 0.5\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "for path in new_prediction_paths:\n", " print(path)" @@ -3458,7 +2337,7 @@ }, { "cell_type": "code", - "execution_count": 188, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3467,7 +2346,7 @@ }, { "cell_type": "code", - "execution_count": 189, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3526,26 +2405,9 @@ }, { "cell_type": "code", - "execution_count": 190, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "char(o/vy) >= 7\n", - "exists(E) <= 822.9\n", - "length(VnMoy) > -6460.3, exists(T) > 6, num(b) >= -1.03\n", - "length(f) >= -7677, char(O:t) < -6\n", - "length(x`) <= 08\n", - "num(@) >= 1.695, exists(=7&) > 23\n", - "exists(rV) >= -5.9, exists(|) <= 6969.0\n", - "length(bd) >= 4.8\n", - "num(8) <= 44.870, length(8xz') <= 13\n", - "exists(H) >= 0.4, num(#) > 1, exists(Q) >= -600.19\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "g = GrammarFuzzer(SPEC_GRAMMAR, max_nonterminals=100)\n", "earley = EarleyParser(SPEC_GRAMMAR)\n", @@ -3556,7 +2418,7 @@ }, { "cell_type": "code", - "execution_count": 191, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3577,7 +2439,7 @@ }, { "cell_type": "code", - "execution_count": 192, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3610,7 +2472,7 @@ }, { "cell_type": "code", - "execution_count": 193, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3656,7 +2518,7 @@ }, { "cell_type": "code", - "execution_count": 194, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3683,7 +2545,7 @@ }, { "cell_type": "code", - "execution_count": 195, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3706,7 +2568,7 @@ }, { "cell_type": "code", - "execution_count": 196, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3735,7 +2597,7 @@ }, { "cell_type": "code", - "execution_count": 197, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3781,7 +2643,7 @@ }, { "cell_type": "code", - "execution_count": 198, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3857,7 +2719,7 @@ }, { "cell_type": "code", - "execution_count": 199, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3870,7 +2732,7 @@ }, { "cell_type": "code", - "execution_count": 200, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -3926,7 +2788,7 @@ }, { "cell_type": "code", - "execution_count": 201, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4010,7 +2872,7 @@ }, { "cell_type": "code", - "execution_count": 202, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4026,7 +2888,7 @@ }, { "cell_type": "code", - "execution_count": 203, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4042,27 +2904,9 @@ }, { "cell_type": "code", - "execution_count": 204, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "--generating samples--\n" - ] - }, - { - "data": { - "text/plain": [ - "['sqrt(-81743)']" - ] - }, - "execution_count": 204, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "exsqrt = ExistenceFeature('exists(@0)', '', 'sqrt')\n", "exdigit = ExistenceFeature('exists()', '', '')\n", @@ -4117,7 +2961,7 @@ }, { "cell_type": "code", - "execution_count": 205, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4143,7 +2987,7 @@ }, { "cell_type": "code", - "execution_count": 206, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4160,7 +3004,7 @@ }, { "cell_type": "code", - "execution_count": 207, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4180,7 +3024,7 @@ }, { "cell_type": "code", - "execution_count": 208, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4199,7 +3043,7 @@ }, { "cell_type": "code", - "execution_count": 209, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4213,7 +3057,7 @@ }, { "cell_type": "code", - "execution_count": 210, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4230,7 +3074,7 @@ }, { "cell_type": "code", - "execution_count": 211, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4279,7 +3123,7 @@ }, { "cell_type": "code", - "execution_count": 212, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4294,7 +3138,7 @@ }, { "cell_type": "code", - "execution_count": 213, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4306,7 +3150,7 @@ }, { "cell_type": "code", - "execution_count": 214, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4340,7 +3184,7 @@ }, { "cell_type": "code", - "execution_count": 215, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -4357,20 +3201,9 @@ }, { "cell_type": "code", - "execution_count": 216, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "['sqrt(-16)', 'sqrt(4)']" - ] - }, - "execution_count": 216, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "initial_sample_list" ] @@ -4388,1113 +3221,9 @@ }, { "cell_type": "code", - "execution_count": 217, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Features: exists(), == '()', exists(), == 'sqrt', == 'tan', == 'cos', == 'sin', exists(), == '-', == '', exists(), == '.', == '', exists(), == '', == '', exists(), == '', == '', exists(), == '1', == '2', == '3', == '4', == '5', == '6', == '7', == '8', == '9', exists(), == '0', == '1', == '2', == '3', == '4', == '5', == '6', == '7', == '8', == '9', , , , , , \n", - "\n", - "Iteration #1\n", - " Decision Tree:\n", - " if <= nan:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " New samples:\n", - " tan(85), cos(-163), sin(-27.60), sqrt(-5), tan(2046.977), sin(-3.11), sqrt(-19.982), sqrt(-8.67), cos(-275), cos(3863), sqrt(-0.01), cos(-8.62380), cos(8), tan(2), cos(31.9), sin(12.9), tan(6.91), cos(-43.9), cos(-9), sin(-2.0), cos(-9.793), sin(761.0), cos(-312), sin(-216.2), sqrt(-1.6), cos(3), sqrt(-488), cos(6.65), sin(46.8), tan(-798), cos(-6.82), sin(19.50), cos(-8), sqrt(-7.3), sin(3.84), tan(-57.276), tan(99), tan(611), sin(9), cos(-1), sin(-5.0), tan(-48.5), tan(482235.4), sin(3368), sin(19.3), sqrt(5), tan(2), tan(-7), sqrt(-6.649), cos(9.9730), tan(-2), sqrt(3966), cos(55), sin(-3), sqrt(752.7), cos(8.0013), cos(-36.29), cos(-611), cos(5), sqrt(-1.014), tan(-5), tan(-38.6), tan(-70), sin(-9), cos(-48), cos(1893), cos(99.83), tan(-7.80), tan(327.39), cos(-35708), cos(-987.85), tan(-15.3), tan(-8785596.0), tan(-4), sqrt(9.283), tan(3.95), tan(-6), sqrt(-20.0), cos(-66.319), tan(0), sin(-4), sin(7.1), cos(-5), sin(-33), tan(-6.46058), sin(-9.6), sin(-5831.1), sqrt(49), tan(5.7), sqrt(-16.43), sin(1), tan(6.556), cos(-4), cos(-7962), tan(102), tan(291.7), sqrt(-64.4), tan(23942.0182), tan(-8.4348), cos(-9)\n", - "\n", - "Iteration #2\n", - " Decision Tree:\n", - " if <= 2.5000:\n", - " if == 'sqrt':\n", - " BUG\n", - " else:\n", - " if == '.':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 2.5\n", - " == 'sqrt' and > 2.5\n", - " == 'sqrt' and == '.' and > 2.5\n", - " > 2.5\n", - " <= 2.5\n", - " == 'sqrt' and == '.' and <= 2.5\n", - " == 'sqrt' and == '.' and > 2.5\n", - " == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == '.' and <= 2.5\n", - " New samples:\n", - " cos(24), sqrt(85.93), tan(-856427.34926), cos(6726.274), sin(-230), cos(1789.8), tan(721), sqrt(-18.163), tan(-29)\n", - "\n", - "Iteration #3\n", - " Decision Tree:\n", - " if == 'sqrt':\n", - " if <= 2.5000:\n", - " BUG\n", - " else:\n", - " if == '7':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == ''\n", - " == 'sqrt' and > 2.5\n", - " == '7' and == 'sqrt' and > 2.5\n", - " == 'sqrt' and == ''\n", - " == 'sqrt' and <= 2.5\n", - " == '7' and == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == ''\n", - " == '7' and == 'sqrt' and > 2.5\n", - " == '7' and == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == ''\n", - " New samples:\n", - " tan(276), sin(-8.2), sqrt(-422.2), sqrt(58.3), sqrt(278.5), sqrt(18.88586), sqrt(-7), cos(218.78), sqrt(5.7), sqrt(4307), sqrt(-2.79), sqrt(7.03), sqrt(7), sqrt(7.1779), sqrt(-4.7), sqrt(-6.7), sqrt(-3), sqrt(-737.6), sqrt(-23.5), cos(-8)\n", - "\n", - "Iteration #4\n", - " Decision Tree:\n", - " if <= 2.5000:\n", - " if == 'sqrt':\n", - " if == '-':\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '7':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == '-' and > 2.5\n", - " == 'sqrt' and == '-' and <= 2.5\n", - " == '7' and <= 2.5\n", - " == '7' and > 2.5\n", - " == 'sqrt' and == '-' and <= 2.5\n", - " == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == '-' and > 2.5\n", - " == '7' and > 2.5\n", - " == 'sqrt' and > 2.5\n", - " == '7' and <= 2.5\n", - " New samples:\n", - " tan(21.01), sqrt(30.8), sqrt(-26), sqrt(11.7), tan(737.64), sqrt(8), sqrt(66.25), sqrt(4.87), sqrt(9), sqrt(1), sqrt(97.26), sin(12), sqrt(91), cos(224.07), sqrt(47.2843), sqrt(85.51), sqrt(63.568), sqrt(6), sqrt(4.9219), sin(11772.3), sqrt(-29), sqrt(4.3), sqrt(6), sqrt(7.65), sqrt(7), sqrt(863), sqrt(-2959.550), sqrt(-30016.8), cos(-35), cos(44), sqrt(11)\n", - "\n", - "Iteration #5\n", - " Decision Tree:\n", - " if <= 2.5000:\n", - " if == 'sqrt':\n", - " if == '-':\n", - " if <= -1494.2750:\n", - " NO_BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 1.5000:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and == '-' and <= 2.5 and > -1494.2750244140625\n", - " == 'sqrt' and == '-' and > 2.5\n", - " == 'sqrt' and == '-' and <= 2.5\n", - " == '' and > 2.5\n", - " == '' and <= 2.5\n", - " == 'sqrt' and == '-' and <= 2.5 and <= -1494.2750244140625\n", - " == '' and <= 2.5\n", - " == 'sqrt' and <= 1.5 and <= 2.5\n", - " == 'sqrt' and == '-' and <= 2.5 and <= -1494.2750244140625\n", - " == 'sqrt' and == '-' and <= 2.5\n", - " == 'sqrt' and == '-' and > 2.5 and <= -1494.2750244140625\n", - " == 'sqrt' and == '-' and <= 2.5 and > -1494.2750244140625\n", - " == 'sqrt' and == '-' and > 2.5\n", - " == 'sqrt' and > 1.5 and > 2.5\n", - " == 'sqrt' and <= 1.5 and > 2.5\n", - " == 'sqrt' and == '-' and > 2.5 and > -1494.2750244140625\n", - " == 'sqrt' and > 1.5 and <= 2.5\n", - " == '' and > 2.5\n", - " New samples:\n", - " sqrt(8.202), cos(11), sqrt(1), tan(27), sqrt(6), sqrt(3.4), sin(26.1), cos(11.4), sqrt(9.7), sqrt(5.1), sin(28.95467263), sqrt(969.2), cos(257), sqrt(1.5), sqrt(0), sqrt(39386), sin(121), sqrt(86), sqrt(-1091.59), sin(-9), tan(-1), sin(7.9), tan(948223), sin(-50.7), tan(-898.4), cos(1.06314), sin(1.33), sqrt(7), cos(3), tan(7.3), sin(-61), tan(-483), sqrt(94), cos(-2.063), sin(-80.06), tan(-86.6807), sin(-8), sqrt(-93), sin(9109.502), cos(6.6), tan(-0), sqrt(3.98215), sqrt(301), sin(-50), cos(7), cos(-74), sin(-3), tan(339), cos(-7), sqrt(-89), tan(-351.63), sqrt(-614609.5), sqrt(80.797), sin(-84), tan(1.589), sqrt(1), sin(1), sqrt(-95.20), sqrt(-977.9884), sin(-33545), tan(-5.665), sqrt(-1), tan(488.3), tan(-6), tan(-7.172), tan(-4555), cos(-6.431), tan(5), sin(-3), sqrt(62.9), sqrt(-2), sqrt(-0), sin(6), sqrt(9), cos(44592), sin(-325), cos(712091.34), cos(5.9), tan(898), sin(0.3), tan(9.06), sin(0), cos(-8.8), tan(9), sqrt(-61), tan(1.9), sin(-421), cos(-4), tan(6), cos(388), sin(775.84188), cos(-1), sin(-50), tan(-0.36), tan(-0.899), tan(-6), cos(80.241), tan(8), sin(-3), tan(8.9), tan(6.6), cos(75.1), cos(-81.73), sin(-8), cos(31.11), tan(43), cos(53), tan(34), sin(-31.5), sqrt(-4), sqrt(-2.477), sqrt(-157), sin(2), sqrt(-5), sin(0), tan(194), cos(-4.6553705), tan(4), cos(-4), sin(-1), sqrt(-291.0), sin(6), sqrt(-9.381581), cos(-9.940), tan(17.17), cos(-9), cos(-24.19), sin(-0), sqrt(-22), sqrt(1.55), tan(-8.92), sqrt(-0), sqrt(-7), cos(3), sqrt(19), tan(0), tan(4.9), tan(8.0), sin(19), tan(-7.5), tan(5.8), cos(3.536), sqrt(19), cos(23), cos(5.7), sin(8.4), cos(-5.3678), tan(-6), tan(9.18), sin(-0), sin(9), cos(-2.5), cos(133.8296), sin(5), tan(-0.5), sin(-3.31), sqrt(-9.8), cos(-4), sin(-1), cos(-2670.4), sin(4), sqrt(-7.1944), tan(-5), sin(6), sqrt(-3), sqrt(1983.482), tan(-23.9), cos(20), sqrt(-9550), sqrt(-8562), sqrt(17.50), sqrt(-9330640.7), sqrt(-16), sqrt(-61056.0), sin(-49), tan(90), sqrt(-76), cos(2905.4), sin(555.4)\n", - "\n", - "Iteration #6\n", - " Decision Tree:\n", - " if <= 2.5000:\n", - " if == 'sqrt':\n", - " if == '-':\n", - " if <= -93.0000:\n", - " NO_BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= -9058118.5000:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == '-' and > 2.5 and > -93.0\n", - " == 'sqrt' and == '-' and > 2.5\n", - " == 'sqrt' and == '-' and <= 2.5 and <= -93.0\n", - " == 'sqrt' and == '-' and <= 2.5\n", - " <= 2.5 and <= -9058118.5\n", - " <= 2.5 and > -9058118.5\n", - " > 2.5 and <= -9058118.5\n", - " == 'sqrt' and == '-' and <= 2.5 and <= -93.0\n", - " == 'sqrt' and == '-' and > 2.5 and <= -93.0\n", - " == 'sqrt' and == '-' and <= 2.5 and > -93.0\n", - " == 'sqrt' and == '-' and <= 2.5\n", - " == 'sqrt' and <= 2.5\n", - " == 'sqrt' and == '-' and > 2.5\n", - " == 'sqrt' and == '-' and <= 2.5 and > -93.0\n", - " == 'sqrt' and > 2.5\n", - " > 2.5 and > -9058118.5\n", - " New samples:\n", - " tan(108), sqrt(-79), sqrt(313), sqrt(-2655.38086), sqrt(-1598), cos(-277881), sqrt(292368264.0), sqrt(12.6), cos(12.6682), tan(24.2), cos(22.00), sin(2590), tan(-27), sqrt(-24), tan(18), sqrt(-29.6633711), sqrt(21976), sin(94), sin(-6061), tan(47320), cos(40), sin(444.03332), sqrt(7105.8), sin(-62), sqrt(5049798), tan(792.9), sqrt(54), sqrt(-831.9), sin(-71.947), sqrt(84), sin(3691), cos(-71), sqrt(31), sin(-70498), cos(4289241898), cos(67.4), tan(414), tan(-886), cos(-671.54), sin(-4111), tan(60), sin(-5061.7), tan(-63), sqrt(5482508), tan(-94.26), sin(97.2), cos(81931), sin(39.780), tan(-843.1), sqrt(-87), tan(327.7), tan(-354619), tan(-381.97), sqrt(-93.91), sin(-80251), cos(48.64), cos(-55), tan(35), tan(-879.82), cos(962.2), tan(-98), sin(-4864.6), tan(-285.57418), sqrt(-596.2), sqrt(-11.4), sqrt(-350162), sqrt(22.8218), sqrt(22.95), sqrt(-15), sqrt(-57.0906), sqrt(-8.36), sqrt(-42.8), sqrt(28.25), sqrt(-7.77), sqrt(17.04), sqrt(-90), sqrt(-7.064), sqrt(-3), sqrt(-3), sin(-29), tan(-29), sqrt(14), cos(-86), tan(66)\n", - "\n", - "Iteration #7\n", - " Decision Tree:\n", - " if <= 2.5000:\n", - " if <= -13.2000:\n", - " if == 'sqrt':\n", - " if <= 93.0000:\n", - " BUG\n", - " else:\n", - " if == '':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '4':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '8':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and == '' and <= 93.0 and > 2.5 and <= -13.199999809265137\n", - " == '8' and > 2.5\n", - " == '4' and <= 2.5 and <= -13.199999809265137\n", - " == '4' and <= 2.5 and > -13.199999809265137\n", - " == 'sqrt' and == '' and <= 93.0 and > 2.5 and <= -13.199999809265137\n", - " == '4' and <= 2.5 and > -13.199999809265137\n", - " == '4' and > 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and > -13.199999809265137\n", - " == 'sqrt' and > 93.0 and <= 2.5 and <= -13.199999809265137\n", - " == '8' and <= 2.5\n", - " == 'sqrt' and > 93.0 and > 2.5 and <= -13.199999809265137\n", - " == '4' and > 2.5 and > -13.199999809265137\n", - " == 'sqrt' and <= 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and == '' and > 93.0 and <= 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and == '' and > 93.0 and <= 2.5 and > -13.199999809265137\n", - " == '4' and <= 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and == '' and > 93.0 and <= 2.5 and > -13.199999809265137\n", - " == 'sqrt' and <= 93.0 and <= 2.5 and > -13.199999809265137\n", - " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and <= -13.199999809265137\n", - " == '8' and <= 2.5\n", - " == 'sqrt' and == '' and > 93.0 and > 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and > -13.199999809265137\n", - " == 'sqrt' and <= 93.0 and > 2.5 and <= -13.199999809265137\n", - " == '4' and > 2.5 and <= -13.199999809265137\n", - " == '4' and > 2.5 and > -13.199999809265137\n", - " == 'sqrt' and > 2.5 and > -13.199999809265137\n", - " == 'sqrt' and == '' and > 93.0 and > 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and > 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and <= 93.0 and <= 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and == '' and <= 93.0 and <= 2.5 and <= -13.199999809265137\n", - " == 'sqrt' and <= 2.5 and > -13.199999809265137\n", - " == '8' and > 2.5\n", - " == 'sqrt' and == '' and > 93.0 and <= 2.5 and <= -13.199999809265137\n", - " New samples:\n", - " sqrt(-69), cos(67.6), sin(-24.90), cos(107.2), sqrt(-56.0), tan(2056014), cos(-78), sqrt(-3.3), sqrt(3.9), sqrt(-9.37), sqrt(1.11), sqrt(-7.2), sin(17.45), sqrt(35.7969), sqrt(-1.605300), sqrt(14), sqrt(1167.9), sqrt(-8.0), sqrt(20107806.9), sqrt(-17.1), sqrt(-8718.4), sqrt(-988.4), sqrt(-736.34), tan(26408287), sqrt(-55625.089), tan(72), tan(-29.9), sqrt(287560), sqrt(-721), sqrt(-39790), sqrt(-931), cos(-23556), sqrt(-8171), sqrt(991.7864), tan(26815.927), sqrt(-10.9), cos(-1686.31), sqrt(190), sqrt(0), sqrt(48), sqrt(1), sqrt(-2), sqrt(7), sqrt(7), sqrt(-7), sqrt(-2.79), sqrt(47.5), sqrt(6.1), sqrt(-6), sqrt(1), sqrt(6), sqrt(81.02), sqrt(-2.4592), sqrt(-3), sqrt(-3.8), sqrt(4), sqrt(-75.7), sin(15.303), sqrt(-566), cos(-4994.2), sqrt(-43.3372), sqrt(-2264.9658), cos(-95.2), tan(-937.624), sqrt(-1162.64), sqrt(27.23), tan(11), sqrt(78), sqrt(9), sqrt(5), sin(22), sqrt(-69.9), sqrt(-737574), sin(64.6), sin(62), sqrt(-422), sin(-3217), sqrt(-67.1), sin(-17.2), sqrt(-59.48), sqrt(-30.78), sqrt(-14), tan(1551.7), sin(98.3), tan(-23628.3)\n", - "\n", - "Iteration #8\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.7000:\n", - " if <= -93.8900:\n", - " NO_BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " if == '':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '9':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '8':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and > 3.5 and <= -93.89000034332275\n", - " == '9' and == 'sqrt' and > 3.5\n", - " == 'sqrt' and == '' and > 3.5 and <= -12.699999809265137\n", - " == '8' and > 3.5\n", - " == 'sqrt' and == '' and > 3.5 and > -12.699999809265137\n", - " == 'sqrt' and == '' and <= 3.5 and <= -12.699999809265137\n", - " == '9' and == 'sqrt' and <= 3.5\n", - " == '9' and == 'sqrt' and <= 3.5\n", - " == '8' and > 3.5\n", - " == '9' and == 'sqrt' and > 3.5\n", - " == 'sqrt' and == '' and <= 3.5 and <= -12.699999809265137\n", - " == '8' and <= 3.5\n", - " == 'sqrt' and == '' and <= 3.5 and > -12.699999809265137\n", - " == 'sqrt' and == '' and > 3.5 and <= -12.699999809265137\n", - " == 'sqrt' and == '' and > 3.5 and > -12.699999809265137\n", - " == 'sqrt' and > 3.5 and > -93.89000034332275\n", - " == 'sqrt' and <= 3.5 and <= -93.89000034332275\n", - " == 'sqrt' and == '' and <= 3.5 and > -12.699999809265137\n", - " == 'sqrt' and <= 3.5 and > -93.89000034332275\n", - " == '8' and <= 3.5\n", - " New samples:\n", - " sqrt(-877), tan(-54.59), sqrt(-912.1), sqrt(-540.5), sqrt(-7518.99), sqrt(-518), tan(93.18), sqrt(4976), sqrt(-22.6), sin(284029), sin(-115), cos(443), tan(988.6), sqrt(-19), sqrt(-13), sqrt(-29.8), sqrt(-34.87), sqrt(-35), sqrt(9910), cos(2069), cos(321), sqrt(-29.593), sin(35033), sqrt(75), cos(-11), tan(196628.318), cos(38), sqrt(53.56), sqrt(83), sqrt(-98.9935), sqrt(0.7770), sqrt(-3), sqrt(2), sqrt(7.56), sqrt(0), sqrt(3), sqrt(-7), sqrt(72), sqrt(-9231.1301), tan(-1909.0), sqrt(38), sqrt(36.4), sqrt(-15), sqrt(-897.3), cos(-1664.405495), sqrt(-3.7), sqrt(-1), sqrt(-0), sqrt(-8.464), sqrt(-3.04), sqrt(-8), sqrt(2), sqrt(2), sqrt(7.8), sqrt(3.7), sqrt(124), sqrt(-8.058101576), sqrt(-2), sqrt(19), sqrt(9.8), sqrt(9.11), sqrt(5), sqrt(-6.8), sqrt(8.83), sqrt(-36.4), cos(-16.028)\n", - "\n", - "Iteration #9\n", - " Decision Tree:\n", - " if <= -12.2000:\n", - " if <= 37.0000:\n", - " if == 'sqrt':\n", - " if <= 1.0000:\n", - " BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 1.0 and <= 37.0 and <= -12.199999809265137\n", - " == 'sqrt' and <= 37.0 and <= -12.199999809265137\n", - " > 37.0 and > -12.199999809265137\n", - " == 'sqrt' and > 1.0 and > 37.0 and <= -12.199999809265137\n", - " > -12.199999809265137\n", - " == 'sqrt' and > 1.0 and <= 37.0 and > -12.199999809265137\n", - " == 'sqrt' and > 1.0 and <= 37.0 and <= -12.199999809265137\n", - " == 'sqrt' and > 37.0 and > -12.199999809265137\n", - " > 37.0 and <= -12.199999809265137\n", - " <= -12.199999809265137\n", - " == 'sqrt' and <= 1.0 and <= 37.0 and > -12.199999809265137\n", - " == 'sqrt' and > 37.0 and <= -12.199999809265137\n", - " <= 37.0 and <= -12.199999809265137\n", - " == 'sqrt' and <= 37.0 and > -12.199999809265137\n", - " == 'sqrt' and <= 1.0 and > 37.0 and <= -12.199999809265137\n", - " New samples:\n", - " sqrt(-13.5), sqrt(-37), sqrt(-19.14), sqrt(-300), sqrt(-1.0), cos(-4), sin(-5), sin(1.4), cos(0.6), tan(-424), tan(-7), cos(7.1), sin(20), tan(-0.659), cos(-9), cos(2), cos(-692172), sin(2.4), sin(-7), sin(-8), cos(-8.22), tan(1.52662), sin(-1), sin(6.7644), tan(-793.9509), sin(-0), cos(-4864), cos(-6.85), cos(2), tan(-34089940.2), cos(4), tan(9.41), sin(-3.2), sin(8), cos(-102), cos(-0), tan(0), tan(0.873549), sin(8.4), tan(9.137), sin(24.6), tan(-6), sin(2.656), cos(35), sin(-7.928), sin(-83.9), cos(-9), tan(-500.1), cos(-3), cos(-49.3), cos(-8925.31022), cos(5), tan(-67856.0), cos(-1), tan(-8), sin(-876), cos(-45.1), sqrt(3730.49), sqrt(-58.4), sqrt(-1), sqrt(4), tan(-23.4), sqrt(0.06), sqrt(-87), sqrt(9), sqrt(2.76147), cos(-32.1), sqrt(6.3), sqrt(-216559.3), sqrt(-8.10), sqrt(-3.2), sqrt(-2669.0), cos(-37.3), sqrt(5), sqrt(-44.62), sqrt(2), sqrt(-2.47), sqrt(-9602), cos(-23.8), sqrt(-64.83), sqrt(-2.0), cos(8019), sin(-329.2883), sqrt(-66.4), sqrt(1), sin(-8434), tan(-15.12482), sin(1.1), sqrt(-91261.5), sqrt(-783.2), sqrt(-93383)\n", - "\n", - "Iteration #10\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.2000:\n", - " if <= 97.0000:\n", - " BUG\n", - " else:\n", - " if == '3':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '0':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '1':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " <= 3.5\n", - " == 'sqrt' and == '3' and <= 3.5 and > -12.199999809265137 and > 97.0\n", - " == '0' and == 'sqrt' and <= 3.5 and <= -12.199999809265137\n", - " == 'sqrt' and == '1' and <= 3.5\n", - " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and <= 97.0\n", - " == '0' and == 'sqrt' and > 3.5 and > -12.199999809265137\n", - " == '0' and == 'sqrt' and > 3.5 and <= -12.199999809265137\n", - " == 'sqrt' and == '3' and <= 3.5 and > -12.199999809265137 and > 97.0\n", - " == 'sqrt' and > 3.5 and <= -12.199999809265137 and <= 97.0\n", - " == '0' and == 'sqrt' and > 3.5 and <= -12.199999809265137\n", - " == 'sqrt' and <= 3.5 and <= -12.199999809265137 and > 97.0\n", - " == 'sqrt' and > 3.5 and <= -12.199999809265137 and > 97.0\n", - " == '0' and == 'sqrt' and <= 3.5 and > -12.199999809265137\n", - " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and > 97.0\n", - " == '0' and == 'sqrt' and <= 3.5 and > -12.199999809265137\n", - " == 'sqrt' and == '1' and <= 3.5\n", - " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and <= 97.0\n", - " == '0' and == 'sqrt' and <= 3.5 and <= -12.199999809265137\n", - " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and > 97.0\n", - " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and > 97.0\n", - " == 'sqrt' and <= 3.5 and > -12.199999809265137 and <= 97.0\n", - " == 'sqrt' and == '3' and > 3.5 and > -12.199999809265137 and > 97.0\n", - " == 'sqrt' and <= 3.5 and <= -12.199999809265137 and <= 97.0\n", - " == 'sqrt' and == '1' and > 3.5\n", - " == 'sqrt' and == '1' and > 3.5\n", - " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and > 97.0\n", - " == 'sqrt' and == '3' and > 3.5 and > -12.199999809265137 and > 97.0\n", - " == 'sqrt' and == '3' and <= 3.5 and <= -12.199999809265137 and <= 97.0\n", - " == 'sqrt' and == '3' and > 3.5 and <= -12.199999809265137 and <= 97.0\n", - " == '0' and == 'sqrt' and > 3.5 and > -12.199999809265137\n", - " > 3.5\n", - " New samples:\n", - " sqrt(-34), sqrt(162.150), sqrt(-33), cos(-1662.16), cos(-77.879), tan(-43), sqrt(-18.2), tan(-43.28), cos(-67), tan(-91), sqrt(-13), sqrt(62), sin(-74.85), cos(-92), sqrt(-17.381), cos(-73), sqrt(76), sqrt(-608165.2), sqrt(31.4), cos(32179), sin(3079.140644), sqrt(125), sin(-83.295), sqrt(-661.14262), tan(-80.8), sqrt(-13.8), cos(-83), cos(-57.21), sqrt(67.760), sin(-42.129), sqrt(-97921.5), sqrt(-26), cos(-62), tan(-67.1071), tan(-73), sqrt(-42.5), sqrt(-376), sin(-80160.46), sqrt(911), tan(-887.522), cos(-99), sqrt(-43.4), sqrt(843.9), sqrt(-30962.7), sqrt(-87.378), tan(-9682.25), sqrt(7702.1), sqrt(99.2), sqrt(20.936), sqrt(2799), tan(-191), sqrt(-935), cos(-211.3), sqrt(-362.5), sqrt(-16.66), sqrt(-11.945), sin(2131.0), sqrt(-13.3), sqrt(-23), sqrt(-26), sqrt(-19.8), sqrt(-24607), cos(-366288162.6), sqrt(-129164.8), tan(-345), sqrt(-11627.4333), sqrt(-36), sqrt(-51724), sqrt(14.727), sqrt(767.205), sqrt(472547.67), sqrt(300.41), sqrt(-17.5), tan(-63.39), sin(-63.163), sin(72375764), tan(58), tan(17.5525), tan(15), cos(-4478), sin(43.83), tan(64), sin(14), sin(-15), sin(158), tan(-71), tan(-62521), sin(-48.57), tan(-74554), sin(-55), tan(56), sin(-93), cos(99), tan(67), tan(73), cos(-11.7), tan(176.399), cos(68.62), tan(-82), tan(-50), sin(607), cos(-9345.6), tan(-77), sin(183), tan(925.97293), tan(605.54792), tan(-80.5), sqrt(-97.9), sqrt(-8467995767.3), sqrt(99), sqrt(28), sqrt(-71.4626), sin(-15.0865), sqrt(14), sqrt(-61), sqrt(-75.9510), sqrt(-39.67), sqrt(-42), sqrt(6510.264), tan(427.475)\n", - "\n", - "Iteration #11\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= 98.3350:\n", - " BUG\n", - " else:\n", - " if == '9':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 2.5000:\n", - " if <= 4.5000:\n", - " if == '-':\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '7':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " == '7' and > 2.5 and > 3.5\n", - " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", - " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", - " == '9' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and > 98.33499908447266\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", - " > 2.5 and > 4.5\n", - " == '9' and == 'sqrt' and > 3.5 and > -12.47249984741211 and > 98.33499908447266\n", - " == 'sqrt' and <= 3.5\n", - " == '7' and > 2.5 and > 3.5\n", - " == 'sqrt' and <= 3.5\n", - " <= 2.5 and > 4.5\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211 and <= 98.33499908447266\n", - " == '7' and <= 2.5 and > 3.5\n", - " == '9' and == 'sqrt' and > 3.5 and > -12.47249984741211 and > 98.33499908447266\n", - " == '7' and <= 2.5 and <= 3.5\n", - " == '9' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and > 98.33499908447266\n", - " == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", - " == '7' and <= 2.5 and > 3.5\n", - " <= 2.5 and <= 4.5\n", - " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", - " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " == '7' and > 2.5 and <= 3.5\n", - " == '7' and > 2.5 and <= 3.5\n", - " == 'sqrt' and > 3.5\n", - " == '9' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", - " == '7' and <= 2.5 and <= 3.5\n", - " == '9' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 98.33499908447266\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 98.33499908447266\n", - " New samples:\n", - " sqrt(24), sin(5951.97), sqrt(317.17), sqrt(-23.3), cos(-36861.3), sqrt(-9283071), sin(-898), sqrt(791), sqrt(-80136), tan(-84659), cos(-6298.35), sqrt(4618.91), sin(319.76351), cos(329.750), tan(397.7), sin(-39.5), cos(-16), sqrt(21.3), sqrt(-78), sqrt(19.36), sin(-590.8348928), sqrt(81947.91), sqrt(-15), tan(76), tan(-180), sqrt(-72), sqrt(33), tan(-61), sqrt(70812), tan(201), sin(318), sin(207.6), sqrt(32227.792), sqrt(31), sqrt(61.31), sqrt(-65.38), sqrt(-44.3), sqrt(-78.0), sqrt(-76), tan(61), cos(-82.1), cos(755.795), tan(-75.1), sin(-42), tan(-71.7), cos(-78102), cos(75), sqrt(-785.4), tan(70.449), sin(52), tan(-73018), sqrt(-22.00), sqrt(-93.14), sqrt(-388510.91857), sqrt(20.8), sqrt(27.0), cos(-16), sqrt(-86.80), sqrt(-78), sqrt(-70), sin(-13), sqrt(-16586), sqrt(-76.6), sqrt(-49.183), sqrt(-174203090.23), sqrt(-2705), sqrt(-6621.887), sqrt(-27.1), tan(-127), sin(239.795058), sqrt(-2292.2), sin(76), sqrt(-78.9), sqrt(-30.9), sqrt(23.7), cos(-29.72), sqrt(-20.83), sqrt(261), tan(78.7), sqrt(108.618), sqrt(-77.10), sin(14.6), tan(-25), sin(-714.20), tan(30605711.935), sqrt(-74.4), sin(69), sqrt(-5805), sqrt(-11.02), sqrt(-10), sqrt(37.448291), sqrt(-5910)\n", - "\n", - "Iteration #12\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= 98.0000:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '2':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '-':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 2.5000:\n", - " if <= 4.5000:\n", - " if == 'sqrt':\n", - " BUG\n", - " else:\n", - " if <= -1.0000:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == '2' and == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " > 2.5 and > 4.5\n", - " == 'sqrt' and == '-' and <= 3.5\n", - " == '2' and == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and <= 98.0 and <= 3.5 and > -12.47249984741211\n", - " == '2' and == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == 'sqrt' and > 98.0 and <= 3.5 and > -12.47249984741211\n", - " <= 2.5 and > 4.5\n", - " > 2.5 and > 3.5\n", - " == '2' and == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == 'sqrt' and > 98.0 and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '-' and <= 3.5\n", - " == 'sqrt' and <= 98.0 and > 3.5 and <= -12.47249984741211\n", - " == '2' and == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " == '2' and == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " == '2' and == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '-' and > 3.5\n", - " == 'sqrt' and > 98.0 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and <= 98.0 and <= 3.5 and <= -12.47249984741211\n", - " <= 2.5 and <= 4.5\n", - " <= 2.5 and > 3.5\n", - " == '2' and == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " > 2.5 and <= 3.5\n", - " == 'sqrt' and == '-' and > 3.5\n", - " New samples:\n", - " sqrt(-4.06), sqrt(-2145.66), sqrt(74), sqrt(0), sqrt(0), sqrt(-0), sqrt(-3), sqrt(-36870.6054), sqrt(-241), sqrt(4), cos(39.4), sqrt(0.7), sqrt(-9), sqrt(-6.4355), sqrt(1.9), sin(81.3), cos(-16), sqrt(-38), sqrt(15.40), sqrt(63), cos(2231.1), sqrt(777), cos(3341), cos(28188), sqrt(14.4), sin(377.6), sqrt(13), sqrt(73453046), sqrt(29), tan(354.30), tan(90), cos(-8451.75), sqrt(63.92), sqrt(-51661.0), cos(1364.9), sqrt(-42.1), sqrt(163), sqrt(-2), sqrt(-2), sqrt(9552), sqrt(264.0), sqrt(-4.2), sqrt(4073.023), sqrt(-9964184), sin(-842.043), sqrt(-69), sqrt(49.842), sqrt(-74.4), cos(-556.05626), sin(-24.46269), sqrt(-38), tan(-3218), tan(-322.4), sqrt(-377), sqrt(-346), tan(-41.6), sqrt(-478), sqrt(-22), tan(-295), cos(-302.20019), sqrt(-18.080), sqrt(-80585.7), sqrt(-764), tan(-124.88), sqrt(-299.9), sqrt(-87.39), sqrt(37), sqrt(-62), sqrt(-56), sin(-15.37), tan(-33), sin(-21.1), tan(82), tan(-59), sqrt(479.30171938), sin(-98), sqrt(681), sqrt(904), sin(-84), sqrt(63.8), cos(-879.4), cos(-80.57), sin(-68), tan(-5374.9), sqrt(60), cos(-905604893), cos(-87.5), tan(-77), sqrt(469.9), cos(150), tan(67)\n", - "\n", - "Iteration #13\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= -98.3350:\n", - " NO_BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 2.5000:\n", - " if == '4':\n", - " if == 'sqrt':\n", - " if == '.':\n", - " NO_BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", - " == 'sqrt' and <= 3.5\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", - " > 2.5 and > 3.5\n", - " == 'sqrt' and <= 3.5\n", - " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", - " == 'sqrt' and > 3.5 and > -98.33499908447266\n", - " == 'sqrt' and <= 3.5 and > -98.33499908447266\n", - " == 'sqrt' and == '4' and == '.' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and <= 3.5 and <= -98.33499908447266\n", - " == '4' and > 2.5 and <= 3.5\n", - " == 'sqrt' and == '4' and > 2.5 and <= 3.5\n", - " == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == '4' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '.' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and > 3.5 and <= -98.33499908447266\n", - " == '4' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and == '.' and > 2.5 and <= 3.5\n", - " <= 2.5 and > 3.5\n", - " == '4' and > 2.5 and > 3.5\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and > 2.5 and > 3.5\n", - " == 'sqrt' and > 3.5\n", - " == 'sqrt' and == '4' and == '.' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and == '4' and == '.' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '.' and > 2.5 and <= 3.5\n", - " > 2.5 and <= 3.5\n", - " New samples:\n", - " sqrt(-4043.9), sqrt(23.9), sqrt(-57.2), sqrt(92.7), sqrt(-966.5), sqrt(82.169), sqrt(52), sqrt(-30.17), cos(-72), cos(45), sin(-15), sqrt(-91977), sin(43.1), sin(49238.639), cos(-487262.58), sin(-52), tan(46), tan(-50), sqrt(-59), sqrt(1730.33), sqrt(-196.1), sqrt(-50.2), sqrt(136.2), sqrt(34659339.77187), sqrt(-9.1), sqrt(-197155.6), tan(394), cos(295), cos(-183), cos(278), cos(21.56003), cos(26560), sin(-347), cos(31.362191), sin(2973), cos(43.33), sin(-351), tan(26.7), sin(386.5496), sin(-34513.22), sin(291.83), tan(-15), tan(-493.5), sin(-26.14191), cos(-40694127.0), sin(407), sqrt(95), sin(-50), sqrt(27), cos(11), sqrt(-44), sqrt(71), sin(11), sqrt(-8384), sqrt(4.2), sin(9.0), tan(281154417), cos(25), sqrt(-3085.50), sin(72), tan(6.2), sqrt(107899.54), sin(-3238), sin(-3975.7276), sqrt(-278750), sin(-17.8), cos(2.0), cos(-108), sqrt(172.27), cos(-91.1), sqrt(13485.1), sin(15), sin(0.2), sin(-12362.9), sqrt(-207.49), sqrt(-35.65), sqrt(-22.88), sin(-62), sin(-62.26), sqrt(-58.3), sqrt(-402), sqrt(41), sqrt(-41), cos(43), cos(-8790), sqrt(-43), tan(31), sin(32.0), cos(10), sin(-32), sqrt(-82), sqrt(-4611), sqrt(46), sin(28907)\n", - "\n", - "Iteration #14\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= -98.3350:\n", - " NO_BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 2.5000:\n", - " if <= 4.5000:\n", - " if <= 42.0500:\n", - " if <= -0.5000:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " > 2.5 and > 4.5\n", - " == 'sqrt' and <= 3.5\n", - " > 2.5 and > 3.5\n", - " == 'sqrt' and <= 3.5\n", - " <= 2.5 and > 4.5\n", - " == 'sqrt' and > 3.5 and > -98.33499908447266\n", - " == 'sqrt' and <= 3.5 and > -98.33499908447266\n", - " == 'sqrt' and <= 3.5 and <= -98.33499908447266\n", - " == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == 'sqrt' and > 3.5 and <= -98.33499908447266\n", - " <= 2.5 and <= 4.5\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " <= 2.5 and > 3.5\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " > 2.5 and <= 3.5\n", - " == 'sqrt' and > 3.5\n", - " New samples:\n", - " sqrt(25), sin(-884), sqrt(-28.56), tan(-55), cos(13), cos(59.2), tan(8408), cos(4.0), tan(720), sin(8531), sqrt(94), cos(99), tan(-92307), sqrt(-30), sin(-716.63), sqrt(-5.2), sin(8.0), sin(9824.63), sin(-2.1), sin(91.08), sqrt(-73.0), tan(-60.472878), tan(-54.2), tan(77.4), sqrt(-6470.9), tan(69), cos(40.1), cos(-0.1), sqrt(60.4), cos(-670), tan(-7.2), cos(-861211.9), cos(73), sqrt(-677372), cos(63), sqrt(-75.9), sqrt(-8653.07), sqrt(-75), cos(53.869), sin(-52728), sin(-78.490), sin(-735.2), sqrt(96), sqrt(35), sqrt(21.0388), cos(-11379.95), sqrt(1517), sqrt(-15), cos(-197.5), sqrt(71), sqrt(-81482), sin(42), sqrt(-281), sin(-71), sqrt(-589.3708), tan(-13), sin(5175.9)\n", - "\n", - "Iteration #15\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= -98.3350:\n", - " NO_BUG\n", - " else:\n", - " if == '':\n", - " BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " if == '3':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '1':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 4.5000:\n", - " if <= 42.0500:\n", - " if == 'sqrt':\n", - " if == '':\n", - " NO_BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '-':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and == '3' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '3' and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '1' and <= 3.5\n", - " == '-' and > 4.5\n", - " == 'sqrt' and == '3' and > 3.5 and > -12.47249984741211\n", - " == '-' and > 4.5\n", - " == 'sqrt' and == '3' and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and > 3.5 and > -98.33499908447266\n", - " == 'sqrt' and <= 3.5 and > -98.33499908447266\n", - " == 'sqrt' and <= 3.5 and <= -98.33499908447266\n", - " == 'sqrt' and == '1' and <= 3.5\n", - " == 'sqrt' and == '3' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and > 3.5 and <= -98.33499908447266\n", - " == 'sqrt' and == '3' and > 3.5 and > -12.47249984741211\n", - " == '-' and <= 4.5\n", - " == 'sqrt' and == '1' and > 3.5\n", - " == 'sqrt' and == '1' and > 3.5\n", - " == 'sqrt' and == '3' and > 3.5 and <= -12.47249984741211\n", - " == '-' and <= 4.5\n", - " == 'sqrt' and == '3' and <= 3.5 and > -12.47249984741211\n", - " New samples:\n", - " sqrt(-3366.139), sqrt(-929.3), sqrt(-95.6), sqrt(-882), sqrt(-80223), sqrt(-919), sqrt(-702), sqrt(-83), sqrt(-33), sin(-1372), sin(66.8), sqrt(93), cos(-99), sqrt(-381.1), sqrt(91.3), sqrt(-15.5), sqrt(-802.4), tan(-209.715), sqrt(10423.6), tan(-245), sqrt(26.1370), sin(-127), tan(-28479), tan(-37.3), sqrt(-16), sqrt(-776.4), sqrt(3681.77707958), sqrt(58), sqrt(31.1658917), sqrt(937.24518), sqrt(-100.99), tan(7043.9404), sin(55), cos(-62.455837), sin(-82.1), tan(-44.1), cos(4706), tan(46265), tan(-40.19), tan(-13.74), tan(652.3), tan(485), tan(5883.8), cos(-14), tan(-5403.115), sin(72.361), cos(976), cos(52.3460), tan(-92), sin(-70.20074698), cos(-72.6), sin(158.39304), cos(8437792487), sin(59), tan(78), cos(-1311.0), cos(-605431.159), tan(805), cos(961), sin(779.48), tan(59.88), sqrt(-863.03), cos(45), sqrt(2.5), sqrt(4.4), cos(26210.98), sqrt(-2920), sqrt(37.6), sqrt(-6.4), sqrt(5), sqrt(2), sqrt(-6), sqrt(-5.5), sqrt(-2), sqrt(-6), sqrt(3422.5), sqrt(-1.1), sqrt(7.4), sqrt(3.10), sqrt(87), sin(1366), sqrt(1), sqrt(4282), sqrt(-2), sin(29), sqrt(81), sqrt(675.8)\n", - "\n", - "Iteration #16\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= 69.5000:\n", - " if == '3':\n", - " BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '4':\n", - " if <= 42.0500:\n", - " if == 'sqrt':\n", - " if == '-':\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '6':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " == '4' and <= 3.5 and <= 42.04999923706055\n", - " == '6' and == 'sqrt' and == '4' and <= 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", - " == '3' and == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and <= 3.5\n", - " == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", - " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and <= 3.5\n", - " == 'sqrt' and == '4' and == '-' and > 3.5 and > 42.04999923706055\n", - " == '4' and > 3.5 and > 42.04999923706055\n", - " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", - " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", - " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and <= 3.5 and > 42.04999923706055\n", - " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == '6' and == 'sqrt' and == '4' and <= 3.5 and > 42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", - " == '3' and == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and <= 3.5 and > 42.04999923706055\n", - " == '4' and > 3.5\n", - " == '6' and == 'sqrt' and == '4' and > 3.5 and > 42.04999923706055\n", - " == '3' and == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", - " == '4' and <= 3.5 and > 42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", - " == '3' and == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", - " == '6' and == 'sqrt' and == '4' and > 3.5 and > 42.04999923706055\n", - " == '4' and <= 3.5\n", - " == '6' and == 'sqrt' and == '4' and > 3.5 and <= 42.04999923706055\n", - " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == '3' and == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " == '6' and == 'sqrt' and == '4' and <= 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and > 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and <= 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and > 3.5\n", - " == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", - " == '4' and > 3.5\n", - " == '4' and > 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == '3' and == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", - " == '6' and == 'sqrt' and == '4' and > 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and > 3.5 and > 42.04999923706055\n", - " == '6' and == 'sqrt' and == '4' and <= 3.5 and > 42.04999923706055\n", - " New samples:\n", - " sqrt(23.4), cos(14.04826), sqrt(27), cos(-12), sqrt(15.79), sin(20.9), tan(19), sin(-32), cos(-21.1006), sqrt(-34), sqrt(-39), sqrt(-21), sqrt(-18), sin(-37), sin(11.28012), cos(-35.7), tan(41), tan(35.8), tan(-13.9), cos(41), cos(-15), sin(31.4), sin(-24), sqrt(13.7), sqrt(25), sqrt(-53), sqrt(2401.6), sqrt(-64), sqrt(134), sqrt(303), sqrt(-436.1734), sqrt(-29.3), sin(-322), sqrt(885), sqrt(783.258), sqrt(515.2), sqrt(56880), sqrt(92), tan(44), sin(440.9), tan(-46), sin(17744.0087), sqrt(87.64), cos(1770), sqrt(31841.333794), sqrt(75.65), tan(320), sqrt(35), cos(25097), sqrt(22), sqrt(-276), cos(278222), sqrt(903), sin(315810.7), cos(137.1), sqrt(93853), sqrt(87.5), tan(2966), sqrt(2.9), sqrt(3.2), sqrt(6.61479), sqrt(5), sqrt(0), sqrt(9.8), sqrt(1202.9), sqrt(10459.7275), cos(12), sqrt(6.47389), sqrt(-1), sqrt(-7), sqrt(-18), sqrt(-59.0), sqrt(-95), sqrt(-28.8), sqrt(-8.3), sqrt(-7.638), sqrt(-779), sqrt(-89.1), sqrt(-3), cos(33), sqrt(5.36), sqrt(21), sqrt(-13.197), cos(-2087.5), sqrt(-6783), cos(-47), sqrt(41762), sin(-254.4), sqrt(-81.20), sqrt(-871), sqrt(-139), sqrt(19.41), sqrt(34), sqrt(-54), sqrt(-135), cos(-31.0), tan(-22.747), sin(-33.947), sqrt(69), tan(2102), tan(20319.133), cos(-324.94), sin(108), sin(-41.6), sqrt(21), sqrt(-2.1489), sqrt(-7), sqrt(-14385), sqrt(-4.5), tan(-12.2), cos(-39), cos(-11.948383), sin(-11), sin(-21.57), sqrt(-150.074), sqrt(-30), sqrt(187), tan(-42.3), cos(-46.33), sqrt(-46103561), sin(432), sqrt(355529), cos(-48409), tan(144), sqrt(-145.280), tan(-3115), sin(-3478861), cos(4244), sqrt(487), sqrt(-34.2), sqrt(-43.30530), cos(-44), sin(-61.4), sqrt(-14.24), sqrt(-14), cos(-43.0), cos(3480.2853), sin(-42), sqrt(-267.5), sqrt(-865474.4), sqrt(-19615), cos(36.3), sqrt(-44), sqrt(61.600), sqrt(5), sqrt(70), sqrt(9.5), sqrt(8.9), sqrt(28), sqrt(3.15), sqrt(7.4351), sqrt(6.5), sqrt(-1.0), sqrt(-22680.9), cos(-18), cos(-37), sqrt(-2.67), cos(-11.85), sqrt(-6.76), sqrt(12), sqrt(-7), sqrt(-6.1), sqrt(-0), sqrt(-6), sqrt(-338), sin(804.3), sqrt(-89.9), sqrt(-718), tan(485), sin(-4589), tan(45), tan(499.3005591), cos(-4947), tan(-47.54), sin(-45.6), tan(-49.800), tan(-3228.3704), sqrt(-475.9), tan(-160), sqrt(-667796.36), tan(-1630.02), sin(-246.7), cos(380718.31), tan(3320), sqrt(13), sqrt(-216.93), sqrt(55123161.8), sqrt(5930.3), sqrt(13), tan(-41.476), sqrt(-4881), tan(1966), sin(42.6), cos(-269.92017167), cos(-3736)\n", - "\n", - "Iteration #17\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= 70.3300:\n", - " if == '8':\n", - " BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '2':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 2.5000:\n", - " if <= 4.5000:\n", - " if == 'sqrt':\n", - " if <= 42.0500:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '5':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == '5' and <= 2.5 and <= 4.5\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " == '2' and == 'sqrt' and > 3.5\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", - " == '5' and <= 2.5 and > 4.5\n", - " == '8' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211 and > 70.32999801635742\n", - " == '2' and == 'sqrt' and <= 3.5\n", - " == '5' and > 2.5 and <= 4.5\n", - " == '2' and == 'sqrt' and > 3.5\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", - " > 2.5 and > 3.5\n", - " == '8' and == 'sqrt' and > 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", - " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", - " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", - " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", - " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", - " == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == '5' and > 2.5 and > 4.5\n", - " == '5' and <= 2.5 and <= 4.5\n", - " == '8' and == 'sqrt' and > 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", - " == '5' and <= 2.5 and > 4.5\n", - " == '8' and == 'sqrt' and <= 3.5 and > -12.47249984741211 and <= 70.32999801635742\n", - " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", - " == '5' and > 2.5 and <= 4.5\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", - " <= 2.5 and > 3.5\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " > 2.5 and <= 3.5\n", - " == '5' and > 2.5 and > 4.5\n", - " == '2' and == 'sqrt' and <= 3.5\n", - " == '8' and == 'sqrt' and <= 3.5 and <= -12.47249984741211 and > 70.32999801635742\n", - " == '8' and == 'sqrt' and > 3.5 and <= -12.47249984741211 and <= 70.32999801635742\n", - " New samples:\n", - " tan(-25.05), sqrt(-272415), cos(-11), sin(-395.825), tan(-5.1), sin(-31), sin(-20), sin(-35), sqrt(1029.1289), cos(42), sqrt(-36.47), sqrt(-75), sqrt(-758.32), sqrt(81.5778), sin(-9035.8), sqrt(-65965), sqrt(-62), tan(-7176.59), sqrt(92), cos(775.0449), sqrt(-58.45), sqrt(9522.34), cos(641375.3), sqrt(-10), cos(120.549), sqrt(35), tan(333), tan(323196), sqrt(94.91780), sqrt(8267), sqrt(17.23), sin(1822.170491), sin(461156.7), sin(97.89), sqrt(-98), sqrt(-868), sqrt(62), sqrt(-332425415.94), sqrt(-898), cos(-38480.678), sqrt(-87658338.049), sqrt(-82), sqrt(-16.9), sqrt(859634869.002), cos(-858800972.8), sqrt(-21), sqrt(78), sqrt(57), sqrt(8), cos(58.4), sqrt(8), sqrt(78.051), tan(-92.1), sqrt(36485.5), sqrt(-58), sin(-121.81), sqrt(-15), sqrt(-24.2), sin(-81), sqrt(-174.209), sqrt(-46.464), sqrt(-9612), tan(-391.0), sqrt(511.8), cos(39375), sqrt(141.7), tan(-319.66), sqrt(-17), sqrt(-30), sin(-10494), sqrt(-388), cos(-2966), sqrt(-63.9)\n", - "\n", - "Iteration #18\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= 69.5000:\n", - " if == '.':\n", - " BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '9':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 2.5000:\n", - " if == '4':\n", - " if == 'sqrt':\n", - " if <= -42.0500:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '-':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '1':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '.' and > 69.5 and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", - " == '9' and == 'sqrt' and > 3.5\n", - " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and > -42.04999923706055\n", - " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and <= -42.04999923706055\n", - " == '1' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", - " == '1' and > 2.5 and > 3.5\n", - " == 'sqrt' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and > 2.5 and > 3.5 and <= -42.04999923706055\n", - " == '1' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '.' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", - " == '1' and > 2.5 and <= 3.5\n", - " == '1' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and == '.' and > 69.5 and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and > 69.5 and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", - " == '9' and == 'sqrt' and <= 3.5\n", - " == '9' and == 'sqrt' and <= 3.5\n", - " == '4' and > 2.5 and <= 3.5\n", - " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '-' and <= 2.5 and <= 3.5\n", - " == '9' and == 'sqrt' and > 3.5\n", - " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and <= -42.04999923706055\n", - " == 'sqrt' and == '4' and > 2.5 and > 3.5 and > -42.04999923706055\n", - " == 'sqrt' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and > 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and > -42.04999923706055\n", - " == '1' and > 2.5 and <= 3.5\n", - " == 'sqrt' and == '.' and <= 69.5 and > 3.5 and <= -12.47249984741211\n", - " == '4' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '-' and > 2.5 and <= 3.5\n", - " == '4' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", - " == '1' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '.' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '.' and <= 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and == '-' and > 2.5 and <= 3.5\n", - " == '4' and > 2.5 and > 3.5\n", - " == 'sqrt' and > 3.5 and <= -12.47249984741211\n", - " == '1' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and == '-' and > 2.5 and > 3.5\n", - " == 'sqrt' and > 69.5 and > 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and > 69.5 and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and > -42.04999923706055\n", - " == 'sqrt' and == '4' and == '-' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and <= -42.04999923706055\n", - " New samples:\n", - " sin(192.95), tan(351.019113), sin(36824.87199691), sqrt(99.3), sin(115.200), sqrt(3066), sqrt(22.4), sqrt(172), tan(91.2), tan(-95), tan(-53), cos(-10), cos(-656.76), tan(71), tan(-78.9), cos(-69.5), cos(-923209871), cos(-504.645), cos(-50.683), cos(-625.04890), sqrt(-84), sqrt(-15.2), sqrt(-0.08), sqrt(29), sqrt(64.7), sqrt(9.304), sqrt(-8.899), sqrt(-0.1), sqrt(-9.9), sqrt(-25.8), sqrt(-3.5), sqrt(5.3), sqrt(-9.51), sqrt(-4.2), sqrt(2.38520), cos(-10.2), tan(39.9), tan(28.81), cos(-4618.601), tan(-414), cos(-4288), tan(-468.638917), tan(-996), sqrt(-2500.86), sqrt(0), tan(15), sqrt(3), sqrt(-1), sqrt(3), sqrt(6), sqrt(49), sqrt(-5), sqrt(-4), sqrt(11918.67), sqrt(-7.0), sin(22), cos(20), sqrt(1896.76547), sqrt(1894.6), sqrt(-50), sqrt(-43), sqrt(-387), sqrt(70), tan(-407.31), tan(61.3), tan(-58.212), sqrt(-73.12525), sin(11), tan(-786.16), sqrt(-7.1), sin(60), sqrt(50.2), cos(-52.367167982), cos(82), tan(-69), tan(-5761), cos(-56405423), sqrt(-438.3), tan(437.995), cos(46.7), sin(-97), sin(-89.2), cos(-56.32), tan(-66), cos(-833.6), tan(71.07), sqrt(-62.5), sqrt(20133.9), sqrt(-2978), sqrt(71), cos(318), cos(2330), sqrt(-597), sin(-4325), cos(-402.42), tan(-45.5), cos(-4963), tan(-44638.1), sin(-4575), sqrt(72), sqrt(-45.3689), sqrt(-38107.0), sqrt(-260.7), sqrt(17), sqrt(-33258.0504), tan(-18), tan(-2.2), tan(24), sin(16.6), sin(-23), tan(-258), sin(16.0536), tan(14.44), sqrt(5.2), sin(31), cos(72), sin(7.0), sqrt(2883.08), sqrt(-505.7), sqrt(1174.1), cos(-67.874269), cos(-195.5), tan(10), tan(375088653.81), tan(42.13), tan(-11), sin(-31), cos(-96.24), sqrt(-38), sin(-5002), sin(-90), cos(-62), sqrt(-8022), cos(-498660.818237), sqrt(-840157), sqrt(410.8776), sqrt(-7601.716), sqrt(-7495.6), sqrt(415324.30), sqrt(-23.35), sqrt(5715.2), sqrt(8.1), tan(70), sqrt(810.59), sqrt(85), sqrt(69), tan(80.2), sqrt(-4.0), sqrt(-7.2), sqrt(595), tan(2846), sqrt(-46), tan(60), cos(-206120.00), sin(-2037.2), sin(-242), cos(-366.7), tan(-32.4), cos(-29.9), tan(-353.4), sin(-43.8393117), cos(-115.03), cos(-407), cos(-192247), cos(-34248), cos(-21958118.2), cos(-18.4), tan(-296.98), sqrt(-20), tan(6055.13141), sin(32), sin(69.6), sin(50.6), tan(5.0), tan(852.71), sin(99), sin(77), tan(92.9), tan(7124.5170), sqrt(91), sin(581357), sin(769.930), sin(-25.147903), cos(41), tan(81), sin(-51), sqrt(123967528.815), tan(12.2), sin(-31.39), sqrt(24.1), sqrt(-2102.02), sin(0.1), sqrt(-128.43), sqrt(-99), sin(-206), sin(-1314), tan(-146), sin(-314), cos(42.38088), sin(-41), tan(47), sin(4598.9), tan(429), tan(46.4), sin(48.35), sin(4013.07), sqrt(-38.6), tan(20.843), tan(42.538), cos(41.7), tan(29832), sin(25713.38), cos(27), sin(499), sin(16513), sin(-95.6), sqrt(-96), tan(457.38), sin(93.24), sin(-95), cos(-630831020460.5007516), sin(-76.318), sqrt(88), cos(-68627.9), cos(-95), sqrt(5804.9), sin(-97.8), cos(-6682.715), sin(-455), tan(-888.6), tan(-889.0), sqrt(-2375), sqrt(48), tan(11), cos(32), sqrt(-427), sqrt(-3823)\n", - "\n", - "Iteration #19\n", - " Decision Tree:\n", - " if <= 3.5000:\n", - " if == 'sqrt':\n", - " if <= -12.4725:\n", - " if <= -70.3300:\n", - " NO_BUG\n", - " else:\n", - " if == '.':\n", - " BUG\n", - " else:\n", - " BUG\n", - " else:\n", - " if == '.':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '0':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if <= 2.5000:\n", - " if == '4':\n", - " if == 'sqrt':\n", - " if <= 42.0500:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '3':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == '3' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and == '.' and > 3.5 and <= -12.47249984741211\n", - " == '3' and > 2.5 and <= 3.5\n", - " == 'sqrt' and <= 3.5 and <= -70.32999801635742\n", - " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '.' and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '.' and <= 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and > 42.04999923706055\n", - " == '3' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '.' and > 3.5 and > -12.47249984741211\n", - " == '0' and == 'sqrt' and <= 3.5\n", - " == '3' and <= 2.5 and > 3.5\n", - " == '3' and > 2.5 and <= 3.5\n", - " == '3' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and > 2.5 and <= 3.5 and > 42.04999923706055\n", - " == '3' and <= 2.5 and <= 3.5\n", - " == '3' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and > 2.5 and <= 3.5\n", - " == '4' and > 2.5 and <= 3.5\n", - " == 'sqrt' and == '.' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and == '.' and > 3.5 and > -12.47249984741211\n", - " == 'sqrt' and == '.' and <= 3.5 and <= -12.47249984741211\n", - " == 'sqrt' and > 3.5 and > -70.32999801635742\n", - " == '4' and <= 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and > 2.5 and > 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '4' and > 2.5 and > 3.5 and > 42.04999923706055\n", - " == '0' and == 'sqrt' and > 3.5\n", - " == '4' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and <= 42.04999923706055\n", - " == 'sqrt' and == '4' and <= 2.5 and > 3.5 and <= 42.04999923706055\n", - " == '4' and > 2.5 and > 3.5\n", - " == '0' and == 'sqrt' and <= 3.5\n", - " == '0' and == 'sqrt' and > 3.5\n", - " == 'sqrt' and == '4' and > 2.5 and > 3.5\n", - " == 'sqrt' and == '4' and <= 2.5 and <= 3.5\n", - " == 'sqrt' and > 3.5 and <= -70.32999801635742\n", - " == 'sqrt' and == '4' and <= 2.5 and <= 3.5 and > 42.04999923706055\n", - " == 'sqrt' and <= 3.5 and > -70.32999801635742\n", - " == 'sqrt' and == '.' and > 3.5 and <= -12.47249984741211\n", - " New samples:\n", - " tan(-370.0), sqrt(2.2), sin(-18), sin(80), cos(-246), sqrt(-3582.268), sin(82), sin(32.490), sqrt(-357), sin(82), cos(-284), sin(-16.846), sin(901), sqrt(15), cos(6.1), sin(-1.1), sqrt(-62), sin(-22180.4), tan(-91), sin(402), sqrt(1.2), sqrt(-268.199), sin(1124), sin(-9.2), sqrt(-186.7), sqrt(-77), tan(18838), sqrt(-1330), sqrt(-15), sqrt(29), sqrt(13.4), sqrt(27.5), cos(36), sin(303), sqrt(8), sqrt(37.7), sqrt(-2), sqrt(7), sqrt(-7), sin(38), sqrt(-30486), sin(1124), cos(23657), sqrt(34.3070), sin(328891), sqrt(279.2), sqrt(51), sqrt(-498506.99), sqrt(-4459), sqrt(-433187), sqrt(-417), tan(-4286300), cos(-51), sin(71.1), sqrt(-0.2), tan(76.7655), tan(881.4), cos(53.3187), cos(9977.78), sqrt(9.573), sqrt(-10.4), sqrt(1.0), cos(6927.21), sqrt(-2.104), cos(785.0), sqrt(66), sqrt(-1.279), sqrt(97), sqrt(440), tan(26.5), tan(-92), sqrt(355.78), tan(-3.1), cos(56584.31), sqrt(495.3), cos(54.3), cos(-59.36), sqrt(-80.0), cos(675.293734945), tan(-937), tan(81), sin(81), sin(405), tan(-4881), sin(-49.4), sin(72), sin(80), tan(-448), sqrt(-44.2), sqrt(47.6), sin(2536), sin(33.0807), sin(23.3), sqrt(236423), sin(-491.18), sin(176132), sin(-231), cos(-3473.633), cos(-13.31), tan(1106.7), sin(-4769.85), cos(2126), sin(-45.70), cos(-481.46), cos(446.4), sin(-19.4), sin(26), sin(16), tan(-186.6), sin(-15), tan(155), tan(-17.7969), sqrt(-261277), sqrt(55), sqrt(-13893.43), sqrt(59), sqrt(-51), sqrt(431.98), sqrt(-45), sqrt(927), sqrt(99), sin(-442), cos(47.5), sqrt(-53), sqrt(-72852.5), cos(-43652.9), tan(-483), sin(-45.4), tan(97), sin(21), sqrt(-41.359), sqrt(-8.2), sqrt(-38), sqrt(-27.4), cos(-42), sqrt(-13), sqrt(92), sqrt(-9.1), cos(-6965642), cos(-140.977), cos(-60), cos(-4130.7), tan(21.586), cos(-118.68), cos(-15.0), cos(-43839.03), tan(-25), tan(43.21), sin(-405.11), cos(-134), cos(-154), sin(-7.2), tan(-0.1), tan(1074), tan(-45828.2), tan(-279.30), cos(-71), tan(-365.7), cos(-4832), sin(-9.1), sqrt(-88.6), sqrt(373754957.4), sqrt(1432.8), sqrt(-4931470.6), sqrt(-459), sqrt(103024), sqrt(381.28), sqrt(-91.2139)\n", - "\n", - "Iteration #20\n", - " Decision Tree:\n", - " if <= 42.0500:\n", - " if <= -12.6000:\n", - " if == 'sqrt':\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == 'cos':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " if == '5':\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "\n", - " New input specifications:\n", - " == 'cos' and <= -12.599999904632568 and <= 42.04999923706055\n", - " == 'sqrt' and > -12.599999904632568 and <= 42.04999923706055\n", - " == 'cos' and > -12.599999904632568 and <= 42.04999923706055\n", - " == 'cos' and <= -12.599999904632568 and > 42.04999923706055\n", - " == 'sqrt' and <= -12.599999904632568 and <= 42.04999923706055\n", - " == 'cos' and <= -12.599999904632568 and > 42.04999923706055\n", - " == 'sqrt' and > -12.599999904632568 and > 42.04999923706055\n", - " == 'cos' and > -12.599999904632568 and > 42.04999923706055\n", - " == 'sqrt' and <= -12.599999904632568 and <= 42.04999923706055\n", - " == 'sqrt' and > -12.599999904632568 and > 42.04999923706055\n", - " == 'cos' and <= -12.599999904632568 and <= 42.04999923706055\n", - " == 'cos' and > -12.599999904632568 and > 42.04999923706055\n", - " == '5' and > 42.04999923706055\n", - " == 'cos' and > -12.599999904632568 and <= 42.04999923706055\n", - " == '5' and <= 42.04999923706055\n", - " == 'sqrt' and <= -12.599999904632568 and > 42.04999923706055\n", - " == '5' and <= 42.04999923706055\n", - " == 'sqrt' and > -12.599999904632568 and <= 42.04999923706055\n", - " == '5' and > 42.04999923706055\n", - " == 'sqrt' and <= -12.599999904632568 and > 42.04999923706055\n", - " New samples:\n", - " sqrt(-39.8), sin(-5), cos(0), sin(-815), sin(-24.3), cos(-93), tan(9645), tan(80), sqrt(-24), sqrt(774159107), cos(-32), cos(47), tan(8315.418), tan(31.2361), sqrt(-7.26), sin(-72359), sin(-5.2), sqrt(-8), sqrt(-109), sqrt(-94894.841)\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "alhazen = Alhazen(sample_runner, CALC_GRAMMAR, initial_sample_list,\n", " verbose=True,\n", @@ -5512,433 +3241,9 @@ }, { "cell_type": "code", - "execution_count": 218, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
DecisionTreeClassifier(class_weight={'BUG': 0.010638297872340425,\n",
-       "                                     'NO_BUG': 0.0005595970900951316},\n",
-       "                       max_depth=5)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" - ], - "text/plain": [ - "DecisionTreeClassifier(class_weight={'BUG': 0.010638297872340425,\n", - " 'NO_BUG': 0.0005595970900951316},\n", - " max_depth=5)" - ] - }, - "execution_count": 218, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "alhazen.last_tree()" ] @@ -5952,139 +3257,9 @@ }, { "cell_type": "code", - "execution_count": 219, - "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "Tree\n", - "\n", - "\n", - "\n", - "0\n", - "\n", - "<value> <= 42.05\n", - "gini = 0.5\n", - "samples = 1881\n", - "value = [1.0, 1.0]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "1\n", - "\n", - "<term> <= -12.6\n", - "gini = 0.396\n", - "samples = 761\n", - "value = [1.0, 0.373]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "0->1\n", - "\n", - "\n", - "True\n", - "\n", - "\n", - "\n", - "8\n", - "\n", - "gini = 0.0\n", - "samples = 1120\n", - "value = [0.0, 0.627]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "0->8\n", - "\n", - "\n", - "False\n", - "\n", - "\n", - "\n", - "2\n", - "\n", - "<function> == 'sqrt' <= 0.5\n", - "gini = 0.088\n", - "samples = 180\n", - "value = [1.0, 0.048]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "1->2\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "5\n", - "\n", - "gini = 0.0\n", - "samples = 581\n", - "value = [0.0, 0.325]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "1->5\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "3\n", - "\n", - "gini = 0.0\n", - "samples = 86\n", - "value = [0.0, 0.048]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "2->3\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "4\n", - "\n", - "gini = -0.0\n", - "samples = 94\n", - "value = [1.0, 0.0]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "2->4\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 219, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "alhazen.show_decision_tree()" ] @@ -6098,27 +3273,9 @@ }, { "cell_type": "code", - "execution_count": 220, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "if <= 42.0500:\n", - " if <= -12.6000:\n", - " if == 'sqrt':\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "else:\n", - " NO_BUG\n", - "\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "print(alhazen.friendly_decision_tree())" ] @@ -6134,7 +3291,7 @@ }, { "cell_type": "code", - "execution_count": 221, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -6143,30 +3300,9 @@ }, { "cell_type": "code", - "execution_count": 222, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "def task_sqrt(x):\n", - " \"\"\"Computes the square root of x, using the Newton-Raphson method\"\"\"\n", - " if x <= -12 and x >= -42:\n", - " x = 0 # Guess where the bug is :-)\n", - " else:\n", - " x = 1\n", - " x = max(x, 0)\n", - " approx = None\n", - " guess = x / 2\n", - " while approx != guess:\n", - " approx = guess\n", - " guess = (approx + x / approx) / 2\n", - " return approx\n", - "\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "\n", "print(inspect.getsource(task_sqrt))" @@ -6198,7 +3334,7 @@ }, { "cell_type": "code", - "execution_count": 223, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -6216,7 +3352,7 @@ }, { "cell_type": "code", - "execution_count": 224, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -6232,170 +3368,9 @@ }, { "cell_type": "code", - "execution_count": 225, - "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "Tree\n", - "\n", - "\n", - "\n", - "0\n", - "\n", - "<lead-digit> <= 4.5\n", - "gini = 0.5\n", - "samples = 1389\n", - "value = [1.0, 1.0]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "1\n", - "\n", - "<function> == 'sqrt' <= 0.5\n", - "gini = 0.338\n", - "samples = 423\n", - "value = [1.0, 0.274]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "0->1\n", - "\n", - "\n", - "True\n", - "\n", - "\n", - "\n", - "10\n", - "\n", - "gini = -0.0\n", - "samples = 966\n", - "value = [0.0, 0.726]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "0->10\n", - "\n", - "\n", - "False\n", - "\n", - "\n", - "\n", - "2\n", - "\n", - "gini = -0.0\n", - "samples = 223\n", - "value = [0.0, 0.168]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "1->2\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "3\n", - "\n", - "<value> <= 41.736\n", - "gini = 0.174\n", - "samples = 200\n", - "value = [1.0, 0.107]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "1->3\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "4\n", - "\n", - "<term> <= -11.5\n", - "gini = 0.067\n", - "samples = 106\n", - "value = [1.0, 0.036]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "3->4\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "9\n", - "\n", - "gini = -0.0\n", - "samples = 94\n", - "value = [0.0, 0.071]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "3->9\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "5\n", - "\n", - "gini = 0.0\n", - "samples = 58\n", - "value = [1.0, 0.0]\n", - "class = BUG\n", - "\n", - "\n", - "\n", - "4->5\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "8\n", - "\n", - "gini = -0.0\n", - "samples = 48\n", - "value = [0.0, 0.036]\n", - "class = NO_BUG\n", - "\n", - "\n", - "\n", - "4->8\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 225, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "alhazen.show_decision_tree()" ] @@ -6434,30 +3409,9 @@ }, { "cell_type": "code", - "execution_count": 226, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "if <= 4.5000:\n", - " if == 'sqrt':\n", - " if <= 41.7355:\n", - " if <= -11.5000:\n", - " BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - " else:\n", - " NO_BUG\n", - "else:\n", - " NO_BUG\n", - "\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "print(alhazen.friendly_decision_tree())" ] @@ -6472,7 +3426,7 @@ }, { "cell_type": "code", - "execution_count": 227, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -6481,30 +3435,9 @@ }, { "cell_type": "code", - "execution_count": 228, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "def task_sqrt(x):\n", - " \"\"\"Computes the square root of x, using the Newton-Raphson method\"\"\"\n", - " if x <= -12 and x >= -42:\n", - " x = 0 # Guess where the bug is :-)\n", - " else:\n", - " x = 1\n", - " x = max(x, 0)\n", - " approx = None\n", - " guess = x / 2\n", - " while approx != guess:\n", - " approx = guess\n", - " guess = (approx + x / approx) / 2\n", - " return approx\n", - "\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "print(inspect.getsource(task_sqrt))" ]