Skip to content

potential performance or functional bug in eager optimization startegy #145

@zurabksmlp

Description

@zurabksmlp

When running SMP on an optimization problem -- specifically, Lipschitz constant estimation for a W-shaped function, function, I observed what looked like an infinite loop and killed the run. Here is the trace. (till the run was killed):


stage,solver,p,x,x_twin,y,y_twin interface_consistency,sat,1/20,0,0 model_consistency,sat,1/20,0,0,0,0 synthesis_feasibility synthesis,synthesis_feasibility ca,sat,1/20,0,0,0,0 ce,unsat pareto_iteration,0,objective,None single_objective_u0_l0, 1 : 0 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1 : 0 : inf : -inf ca_eager,sat,1/20,0,0,0,0 bin_opt_max start, objective_thresholds_u0_l0, 1 : 0 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1 : 0 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 2 : 0 : inf : -inf : 1 max_ca,sat,1/20,4959589089641759/1688849860263936,0,4892035095231201/562949953421312,0 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 2 : 0 : inf : 1 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 4 : 0 : inf : 1 : 2 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 4 : 0 : 2 : 1 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 4 : 0 : 2 : 1 : 1.5 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 4 : 0 : 1.5 : 1 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 4 : 0 : 1.5 : 1 : 1.25 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 4 : 0 : 1.25 : 1 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 4 : 0 : 1.25 : 1 : 1.125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 4 : 0 : 1.125 : 1 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 4 : 0 : 1.125 : 1 : 1.0625 max_ca,sat,1/20,34643940133547543/13510798882111488,0,44169053345436137/4503599627370496,0 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 4 : 0 : 1.125 : 1.0625 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 4 : 0 : 1.125 : 1.0625 : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max end, p_cand_l_u, {'x': Fraction(34643940133547543, 13510798882111488), 'x_twin': Fraction(0, 1), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.0625 bin_opt_max start, objective_thresholds_u0_l0, -1.0625 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.0625 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -1.03125 : -1.09375 : inf : -inf : -1.0625 max_ca,sat,1/20,34643940133547543/13510798882111488,0,44169053345436137/4503599627370496,0 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -1.0625 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -1.0625 : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max end, p_cand_l_u, {'x': Fraction(34643940133547543, 13510798882111488), 'x_twin': Fraction(0, 1), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(34643940133547543, 13510798882111488), 'x_twin': Fraction(0, 1), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,100464048687567337/13510798882111488,15/4,49798552879649257/6755399441055744 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,510179024787598247/189151184349560832,5032772583586529/126100789566373888,593202883918173273/63050394783186944,5032772583586529/31525197391593472 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,11382848058178929/4503599627370496,123848989752689/4503599627370496,44664449304446893/4503599627370496,123848989752689/1125899906842624 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(11382848058178929, 4503599627370496), 'x_twin': Fraction(123848989752689, 4503599627370496), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,11382848058178929/4503599627370496,123848989752689/4503599627370496,44664449304446893/4503599627370496,123848989752689/1125899906842624 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,11382848058178929/4503599627370496,123848989752689/4503599627370496,44664449304446893/4503599627370496,123848989752689/1125899906842624 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(11382848058178929, 4503599627370496), 'x_twin': Fraction(123848989752689, 4503599627370496), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(11382848058178929, 4503599627370496), 'x_twin': Fraction(123848989752689, 4503599627370496), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,69164031277342397/27021597764222976,123848989752689/36028797018963968,88461955680624963/9007199254740992,123848989752689/9007199254740992 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(69164031277342397, 27021597764222976), 'x_twin': Fraction(123848989752689, 36028797018963968), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,69164031277342397/27021597764222976,123848989752689/36028797018963968,88461955680624963/9007199254740992,123848989752689/9007199254740992 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,69164031277342397/27021597764222976,123848989752689/36028797018963968,88461955680624963/9007199254740992,123848989752689/9007199254740992 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(69164031277342397, 27021597764222976), 'x_twin': Fraction(123848989752689, 36028797018963968), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(69164031277342397, 27021597764222976), 'x_twin': Fraction(123848989752689, 36028797018963968), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,46150637181479161/18014398509481984,123848989752689/72057594037927936,176800062371497237/18014398509481984,123848989752689/18014398509481984 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(46150637181479161, 18014398509481984), 'x_twin': Fraction(123848989752689, 72057594037927936), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,46150637181479161/18014398509481984,123848989752689/72057594037927936,176800062371497237/18014398509481984,123848989752689/18014398509481984 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,46150637181479161/18014398509481984,123848989752689/72057594037927936,176800062371497237/18014398509481984,123848989752689/18014398509481984 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(46150637181479161, 18014398509481984), 'x_twin': Fraction(123848989752689, 72057594037927936), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(46150637181479161, 18014398509481984), 'x_twin': Fraction(123848989752689, 72057594037927936), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,277027672078627655/108086391056891904,123848989752689/144115188075855872,353476275753241785/36028797018963968,123848989752689/36028797018963968 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(277027672078627655, 108086391056891904), 'x_twin': Fraction(123848989752689, 144115188075855872), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,277027672078627655/108086391056891904,123848989752689/144115188075855872,353476275753241785/36028797018963968,123848989752689/36028797018963968 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,277027672078627655/108086391056891904,123848989752689/144115188075855872,353476275753241785/36028797018963968,123848989752689/36028797018963968 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(277027672078627655, 108086391056891904), 'x_twin': Fraction(123848989752689, 144115188075855872), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(277027672078627655, 108086391056891904), 'x_twin': Fraction(123848989752689, 144115188075855872), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,184726397715669333/72057594037927936,123848989752689/288230376151711744,706828702516730881/72057594037927936,123848989752689/72057594037927936 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(184726397715669333, 72057594037927936), 'x_twin': Fraction(123848989752689, 288230376151711744), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,184726397715669333/72057594037927936,123848989752689/288230376151711744,706828702516730881/72057594037927936,123848989752689/72057594037927936 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,184726397715669333/72057594037927936,123848989752689/288230376151711744,706828702516730881/72057594037927936,123848989752689/72057594037927936 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(184726397715669333, 72057594037927936), 'x_twin': Fraction(123848989752689, 288230376151711744), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(184726397715669333, 72057594037927936), 'x_twin': Fraction(123848989752689, 288230376151711744), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,1108482235283768687/432345564227567616,123848989752689/576460752303423488,1413533556043709073/144115188075855872,123848989752689/144115188075855872 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(1108482235283768687, 432345564227567616), 'x_twin': Fraction(123848989752689, 576460752303423488), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,1108482235283768687/432345564227567616,123848989752689/576460752303423488,1413533556043709073/144115188075855872,123848989752689/144115188075855872 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,1108482235283768687/432345564227567616,123848989752689/576460752303423488,1413533556043709073/144115188075855872,123848989752689/144115188075855872 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(1108482235283768687, 432345564227567616), 'x_twin': Fraction(123848989752689, 576460752303423488), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(1108482235283768687, 432345564227567616), 'x_twin': Fraction(123848989752689, 576460752303423488), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,739029439852430021/288230376151711744,123848989752689/1152921504606846976,2826943263097665457/288230376151711744,123848989752689/288230376151711744 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(739029439852430021, 288230376151711744), 'x_twin': Fraction(123848989752689, 1152921504606846976), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,739029439852430021/288230376151711744,123848989752689/1152921504606846976,2826943263097665457/288230376151711744,123848989752689/288230376151711744 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,739029439852430021/288230376151711744,123848989752689/1152921504606846976,2826943263097665457/288230376151711744,123848989752689/288230376151711744 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(739029439852430021, 288230376151711744), 'x_twin': Fraction(123848989752689, 1152921504606846976), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(739029439852430021, 288230376151711744), 'x_twin': Fraction(123848989752689, 1152921504606846976), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,4434300488104332815/1729382256910270464,123848989752689/2305843009213693952,5653762677205578225/576460752303423488,123848989752689/576460752303423488 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(4434300488104332815, 1729382256910270464), 'x_twin': Fraction(123848989752689, 2305843009213693952), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,4434300488104332815/1729382256910270464,123848989752689/2305843009213693952,5653762677205578225/576460752303423488,123848989752689/576460752303423488 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,4434300488104332815/1729382256910270464,123848989752689/2305843009213693952,5653762677205578225/576460752303423488,123848989752689/576460752303423488 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(4434300488104332815, 1729382256910270464), 'x_twin': Fraction(123848989752689, 2305843009213693952), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(4434300488104332815, 1729382256910270464), 'x_twin': Fraction(123848989752689, 2305843009213693952), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,2956241608399472773/1152921504606846976,123848989752689/4611686018427387904,11307401505421403761/1152921504606846976,123848989752689/1152921504606846976 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(2956241608399472773, 1152921504606846976), 'x_twin': Fraction(123848989752689, 4611686018427387904), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,2956241608399472773/1152921504606846976,123848989752689/4611686018427387904,11307401505421403761/1152921504606846976,123848989752689/1152921504606846976 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,2956241608399472773/1152921504606846976,123848989752689/4611686018427387904,11307401505421403761/1152921504606846976,123848989752689/1152921504606846976 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(2956241608399472773, 1152921504606846976), 'x_twin': Fraction(123848989752689, 4611686018427387904), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(2956241608399472773, 1152921504606846976), 'x_twin': Fraction(123848989752689, 4611686018427387904), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,17737573499386589327/6917529027641081856,123848989752689/9223372036854775808,22614679161853054833/2305843009213693952,123848989752689/2305843009213693952 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(17737573499386589327, 6917529027641081856), 'x_twin': Fraction(123848989752689, 9223372036854775808), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,17737573499386589327/6917529027641081856,123848989752689/9223372036854775808,22614679161853054833/2305843009213693952,123848989752689/2305843009213693952 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,17737573499386589327/6917529027641081856,123848989752689/9223372036854775808,22614679161853054833/2305843009213693952,123848989752689/2305843009213693952 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(17737573499386589327, 6917529027641081856), 'x_twin': Fraction(123848989752689, 9223372036854775808), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(17737573499386589327, 6917529027641081856), 'x_twin': Fraction(123848989752689, 9223372036854775808), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,11825090282587643781/4611686018427387904,123848989752689/18446744073709551616,45229234474716356977/4611686018427387904,123848989752689/4611686018427387904 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(11825090282587643781, 4611686018427387904), 'x_twin': Fraction(123848989752689, 18446744073709551616), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,11825090282587643781/4611686018427387904,123848989752689/18446744073709551616,45229234474716356977/4611686018427387904,123848989752689/4611686018427387904 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,11825090282587643781/4611686018427387904,123848989752689/18446744073709551616,45229234474716356977/4611686018427387904,123848989752689/4611686018427387904 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(11825090282587643781, 4611686018427387904), 'x_twin': Fraction(123848989752689, 18446744073709551616), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(11825090282587643781, 4611686018427387904), 'x_twin': Fraction(123848989752689, 18446744073709551616), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,70950665544515615375/27670116110564327424,123848989752689/36893488147419103232,90458345100442961265/9223372036854775808,123848989752689/9223372036854775808 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(70950665544515615375, 27670116110564327424), 'x_twin': Fraction(123848989752689, 36893488147419103232), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,70950665544515615375/27670116110564327424,123848989752689/36893488147419103232,90458345100442961265/9223372036854775808,123848989752689/9223372036854775808 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,70950665544515615375/27670116110564327424,123848989752689/36893488147419103232,90458345100442961265/9223372036854775808,123848989752689/9223372036854775808 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(70950665544515615375, 27670116110564327424), 'x_twin': Fraction(123848989752689, 36893488147419103232), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(70950665544515615375, 27670116110564327424), 'x_twin': Fraction(123848989752689, 36893488147419103232), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,47300484979340327813/18446744073709551616,123848989752689/73786976294838206464,180916566351896169841/18446744073709551616,123848989752689/18446744073709551616 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(47300484979340327813, 18446744073709551616), 'x_twin': Fraction(123848989752689, 73786976294838206464), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,47300484979340327813/18446744073709551616,123848989752689/73786976294838206464,180916566351896169841/18446744073709551616,123848989752689/18446744073709551616 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,47300484979340327813/18446744073709551616,123848989752689/73786976294838206464,180916566351896169841/18446744073709551616,123848989752689/18446744073709551616 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(47300484979340327813, 18446744073709551616), 'x_twin': Fraction(123848989752689, 73786976294838206464), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(47300484979340327813, 18446744073709551616), 'x_twin': Fraction(123848989752689, 73786976294838206464), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 0.90625 : 1.09375 : 1.03125 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : 1.03125 : 1.0625 max_ca,sat,1/20,283803033725031719567/110680464442257309696,123848989752689/147573952589676412928,361833008854802586993/36893488147419103232,123848989752689/36893488147419103232 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(283803033725031719567, 110680464442257309696), 'x_twin': Fraction(123848989752689, 147573952589676412928), 'p': Fraction(1, 20)} : 1.0625 : 1.09375 phi_cex_cand,unsat bin_opt_min start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max start, objective_thresholds_u0_l0, -1.03125 : -1.09375 bin_opt_max iter, objective_thresholds_u0_l0_u_l, -1.03125 : -1.09375 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.09375 : inf : -inf : -1.03125 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.09375 : -1.03125 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -inf : -1.09375 max_ca,sat,1/20,283803033725031719567/110680464442257309696,123848989752689/147573952589676412928,361833008854802586993/36893488147419103232,123848989752689/36893488147419103232 bin_opt_max iter, sat bin_opt_max iter, objective_thresholds_u0_l0_u_l, -0.96875 : -1.21875 : -1.03125 : -1.09375 adjusted thresholds, objective_thresholds_u0_l0_u_l_T, -0.96875 : -1.21875 : -1.03125 : -1.09375 : -1.0625 max_ca,sat,1/20,283803033725031719567/110680464442257309696,123848989752689/147573952589676412928,361833008854802586993/36893488147419103232,123848989752689/36893488147419103232 bin_opt_max iter, sat bin_opt_max end, p_cand_l_u, {'x': Fraction(283803033725031719567, 110680464442257309696), 'x_twin': Fraction(123848989752689, 147573952589676412928), 'p': Fraction(1, 20)} : -1.0625 : -1.03125 bin_opt_min end, p_cand_l_u, {'x': Fraction(283803033725031719567, 110680464442257309696), 'x_twin': Fraction(123848989752689, 147573952589676412928), 'p': Fraction(1, 20)} : 1.03125 : 1.0625 eager opt iter, objective_thresholds_ue_le_ucand_lstab, 1.09375 : 1.03125 : 1.09375 : 1.03125 ca_eager,sat,1/20,10,25208898914206351/3377699720527872,15/4,12542524962226831/1688849860263936 bin_opt_max start, objective_thresholds_u0_l0, 1.09375 : 1.03125 bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.09375 : 1.03125 : inf : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 1.03125 : inf : -inf : 1.09375 max_ca,unsat bin_opt_max iter, unsat bin_opt_max iter, objective_thresholds_u0_l0_u_l, 1.15625 : 1.03125 : 1.09375 : -inf adjusted thresholds, objective_thresholds_u0_l0_u_l_T, 1.15625 : 0.90625 : 1.09375 : -inf : 1.03125 max_ca,sat,1/20,24058336437975747/9007199254740992,1072821768377187/18014398509481984,85450977644040119/9007199254740992,1072821768377187/4503599627370496

I fed the above trace to MS copilot with prompt:
"I am not using the eta/alpha constraint, and the run should converge to objective value 10 but it is not converging and I killed it. Here is optimization search trace:"

Below I include the copilot's answer:

Copilot
Thanks — this trace is actually very revealing.
You are not dealing with a modeling issue anymore — this is now a true algorithmic non convergence bug in the eager optimization loop.
Let me walk you through it precisely.


✅ 1. What we clearly see in your trace
Key repeating pattern (this is the smoking gun):
You are looping forever on:
eager opt iter, ue/le/ucand/lstab = 1.09375 / 1.03125 / 1.09375 / 1.03125
👉 This NEVER changes
Then each iteration:
ca_eager → sat ✅
bin_opt_max → returns same bounds ✅
phi_cex_cand → unsat ✅
bin_opt_min → returns same bounds ✅
back to same state
→ loop repeats


🚨 2. Why this is NOT expected behavior
The loop termination condition is:
Python
if l_stab + epsilon > u_cand:
break
But here:
l_stab = 1.03125
u_cand = 1.09375
gap = 0.0625
👉 If epsilon is smaller than that, loop continues — OK
BUT:
❗ the bounds are not tightening anymore
That should never happen in a correct branch-and-bound / CEGIS system.


✅ 3. Root cause (very important)
The problem is NOT the objective.
The problem is:
❗ you are discovering the SAME counterexample region again and again, but your lemma does not exclude it effectively


Evidence from your trace
Look at repeated patterns:
x ≈ 2.5 always
x_twin ≈ very small (~10^-15)
y ≈ 3.75
y_twin ≈ ~0
👉 So objective ≈ ~3.75
BUT your optimization keeps reporting:
stable bounds ≈ [1.03125, 1.09375]
✅ That mismatch is expected (because stable bound ≠ raw objective)
BUT:
🔴 The SAME region is rediscovered infinitely


🚨 4. Exact bug location
The issue is here in your code:
Python
theta_p_cex_delta = compute_stability_formula_theta(p_cex, delta, ...)
L = L ∧ ¬theta_p_cex_delta
``


What is going wrong
❗ Your lemma:
¬θ(p_cex, delta)
is supposed to:
exclude that unstable region


❗ But in practice:
delta is SMALL or ineffective
θ is too weak (region too small)
OR numerical representation differs each time
👉 Result:
You are not excluding the region that produced the candidate


Evidence:
Look at different x values:
34643940133547543 / 13510798882111488
11382848058178929 / 4503599627370496
69164031277342397 / 27021597764222976
👉 These are all:
≈ 2.56, 2.52, 2.56 ...
Same region, slightly different rational encodings.


✅ 5. So what is happening algorithmically
Your loop is doing:
Find candidate → same region
Find no CE → try to improve
Add lemma → lemma too weak
Repeat → rediscover same region
→ infinite loop


✅ 6. Why you expected convergence to 10
Because now:
you are NOT using stability constraint
so optimum should indeed be 10
✅ Your expectation is correct


🚨 7. Why it still does not converge to 10
Because:
❗ your search NEVER escapes this “false stable region ≈1.06”
The algorithm is stuck in a local attractor caused by:
ineffective lemma
insufficient region exclusion
repeated SAT witnesses near same point


✅ 8. Minimal fixes (very practical)
✅ Fix A — strengthen blocking
Replace:
Python
L = L ∧ ¬theta(p_cex)
with something stronger: Option 1 (recommended) Python L = L ∧ NOT (distance(p, p_cex) < δ_block)
👉 explicit knob-space blocking


Option 2
Use larger delta for lemma:
Python
theta(..., delta_large)


✅ Fix B — detect stagnation
Add check:
Python
if abs(u_cand - prev_u_cand) < tol and abs(l_stab - prev_l_stab) < tol:
break # or force escape


✅ Fix C — forbid reuse of identical candidate
Track:
Python
if hash(p_cand) already seen:
break or perturb


✅ Fix D — enforce progress in bin_opt
Right now:
bin_opt_max returns SAME [1.0625, 1.09375]
👉 You must ensure:
each iteration STRICTLY reduces interval


✅ 9. Quick diagnostic confirmation
You can verify the issue by printing:
Python
print(hash(p_cand), p_cand['x'])
You’ll see:
extremely similar values every iteration


✅ 10. Key insight
Your algorithm is not converging because the search space is not being reduced, even though lemmas are being added.
This is a classic CEGIS failure mode:
weak generalization of counterexamples
repeated rediscovery of same witness


✅ 11. Final one-line diagnosis
The run does not converge because the blocking lemma ¬θ(p_cex) is too weak (or too local), so the optimizer keeps rediscovering essentially the same candidate region near x≈2.5, resulting in a fixed interval [1.03125ⓜ,1.09375] and an infinite loop with no progress.


✅ If you want next step
I can:
pinpoint exactly how theta(...) is too weak in your implementation
or design a correct blocking strategy for SMLP eager optimization (this is the real fix)
or show a minimal patch that guarantees convergence
Just tell me 👍

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions