If Cut/Copy and Paste fails, then click here for download.
fmcTitle("tp021")$ /* Source version 1 */ /* Simple APM canonicalizer version 1.3 */ /* FMCMAC backend version 1.2 */ myownabs(x) := fmc_m_abs(x)$ fmcInitialValue(x_1, -1)$ fmcStrongLowerBound(x_1, 2)$ fmcStrongUpperBound(x_1, 50)$ fmcInitialValue(x_2, -1)$ fmcStrongLowerBound(x_2, -50)$ fmcStrongUpperBound(x_2, 50)$ myminfun : (1/100)*x_1^2 + x_2^2 - 100$ myabsdevnod0_0 : myownabs(myminfun + 99.96b0)$ myreldevnod0_0 : myownabs(myminfun/99.96b0 + 1)$ myabsdevnod0_1 : myownabs(x_1 - 2)$ myreldevnod0_1 : myownabs(x_1/2 - 1)$ myabsdevnod0_2 : myownabs(x_2)$ myreldevnod0_2 : myownabs(x_2)$ myabsdevnod1_0 : (1/2)*(myownabs(myabsdevnod0_0 - myabsdevnod0_1) + (myabsdevnod0_0 + myabsdevnod0_1))$ myreldevnod1_0 : (1/2)*(myownabs(myreldevnod0_0 - myreldevnod0_1) + (myreldevnod0_0 + myreldevnod0_1))$ myabsdevnod1_2 : myabsdevnod0_2$ myreldevnod1_2 : myreldevnod0_2$ myabsdevnod2_0 : (1/2)*(myownabs(myabsdevnod1_0 - myabsdevnod1_2) + (myabsdevnod1_0 + myabsdevnod1_2))$ myreldevnod2_0 : (1/2)*(myownabs(myreldevnod1_0 - myreldevnod1_2) + (myreldevnod1_0 + myreldevnod1_2))$ zmyabsdevmax : myabsdevnod2_0$ zmyreldevmax : myreldevnod2_0$ obj : myminfun$ fmcMinimum(obj)$ fmcInequality(ci_1, 10*x_1 - x_2 - 10)$ fmcEscortFloat(x_1, x_1)$ fmcEscortFloat(x_2, x_2)$ fmcEscortFloat('myminfun, myminfun)$ fmcEscortFloat('zmyabsdevmax, zmyabsdevmax)$ fmcEscortFloat('zmyreldevmax, zmyreldevmax)$ fmcControlMinimum(1, 0)$ /* End Model */