1<HTML> 2<HEAD> 3<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 4<TITLE> Numerical Verification using Boost C++ Libraries </TITLE> 5</HEAD> 6<BODY> 7 8<div align=right> 9æçµæ´æ°: 2013/7/4 10</div> 11 12<H1> 13<div align=center> 14boostã§ç²¾åº¦ä¿è¨¼ããã 15</div> 16</H1> 17 18<div align=right> 19ææ¨ é è± 20</div> 21 22<HR> 23å¦çã®åè«æºåã®ããã«ç 究室å åãã«ä½æãããã¼ã¸ã§ããã 24ä¸è¬å ¬éãããã¨ã«ãã¾ããã 25<HR> 26 27<H2> 281. ã¯ããã« 29</H2> 30 31精度ä¿è¨¼ä»ãæ°å¤è¨ç®ãè¡ãæ¹æ³ã¯ãããããããã 32ç¹ã«éç·å½¢è¨ç®ã§C++ã使ã£ãæ¬æ ¼çãªããã°ã©ã ãæ¸ããã¨ã 33èããã¨ããboostã«å«ã¾ãã¦ããintervalã¯ã©ã¹ã¨ublasã¯ã©ã¹ã 34使ãã®ã¯ä¸ã¤ã®æåãªæ¹æ³ã ã¨æãããã 35 36<P> 37 38ããã«ããã®boost.intervalã¨boost.ublasã使ã£ã¦ä½ã£ã 39æ¯è¼çåç´ãªéç·å½¢æ¹ç¨å¼ã®å ¨è§£æ¢ç´¢ã®ããã°ã©ã ãããã 40ãããåããã¦ã¿ã¦ãboostã«æ £ãã¦ã¿ã¦æ¬²ããã 41 42<H2> 432. boostã¨ã¯ 44</H2> 45 46boostã¨ã¯ãC++ã®å·¨å¤§ãªãã³ãã¬ã¼ãã¯ã©ã¹ã©ã¤ãã©ãªéã§ããã 47C++ã¯ãªãã¸ã§ã¯ãæåè¨èªã«åé¡ããããããã以ä¸ã«ãã³ãã¬ã¼ãã«ãã 48è¨è¿°åãä»ã®è¨èªã®è¿½éã許ãã¬ã¬ãã«ã«ããç¹ãç¹è²ã§ããã 49 50<P> 51 52ãã³ãã¬ã¼ãã¨ã¯ãç°¡åã«è¨ãã°ã夿°ã®åãæªå®ã«ããã¾ã¾ 53ã¯ã©ã¹ã颿°ãå®ç¾©ããæ©è½ã§ãããCè¨èªã®ãã¯ãæ©è½ãçºéããããã®ã¨ãã 54è¦æ¹ãåºæ¥ãã 55<UL> 56<LI> 57颿°ãã³ãã¬ã¼ãã®ä¾:<A HREF="sample/template-func1.cc">template-func1.cc</A>, 58<A HREF="sample/template-func2.cc">template-func2.cc</A> 59<LI> 60ã¯ã©ã¹ãã³ãã¬ã¼ãã®ä¾:<A HREF="sample/template-class1.cc">template-class1.cc</A>, 61<A HREF="sample/template-class2.cc">template-class2.cc</A> 62</UL> 63 64<P> 65 66C++ã«ã¯STLã¨å¼ã°ããæ¨æºãã³ãã¬ã¼ãã¯ã©ã¹ã©ã¤ãã©ãªããããã 67boostã¯ããã«é£½ãè¶³ãã¬äººéãæ¨æºåãå¾ ããã«åæã«éçºãã 68ãã³ãã¬ã¼ãã®éåä½ã§ããã 69 70<P> 71boostã®åæ¸ã¨ãã¦ã 72<UL> 73<LI> 74<A HREF="http://www.amazon.co.jp/dp/4798017043"> 75Boost C++ Libraries ããã°ã©ãã³ã° 76</A> 77<LI> 78<A HREF="http://www.amazon.co.jp/dp/4894714191"> 79Boost C++ããã¥ã¼ã³ã¢ããããæå 端ã©ã¤ãã©ãª 80</A> 81</UL> 82ãåºçããã¦ããã 83 84<H2> 853. boostã®ã¤ã³ã¹ãã¼ã« 86</H2> 87 88boostã¯å·¨å¤§ãªã¯ã©ã¹ã©ã¤ãã©ãªã®éåä½ã ãã 89<UL> 90<LI> ããããã¡ã¤ã«ãincludeããã ãã§ä½¿ããã¯ã©ã¹ 91<LI> ããããã¡ã¤ã«ã ãã§ãªããã©ã¤ãã©ãªããªã³ã¯ããå¿ è¦ã®ããã¯ã©ã¹ 92(æ£è¦è¡¨ç¾ãthreadãªã©) 93</UL> 94 95ã®äºç¨®é¡ã«åããããã 96boostã®å ¨æ©è½ã使ããã¨æãã°ããªã³ã¯ããã©ã¤ãã©ãªãmakeãã 97å¿ è¦ãããããã®æ¹æ³ã¯é©å½ã«æ¤ç´¢ããã¨ãæ¬ãè¦ãã¨ããã¦ä¸ããã 98 99<P> 100 101intervalã¨ublasã¯ä¸¡æ¹ã¨ãããããã¡ã¤ã«ã ãã§ä½¿ããã¯ã©ã¹ã§ããã 102ãã®ãããªã¯ã©ã¹ãã使ããªããªãã°ãboostããã±ã¼ã¸ã®ããããã¡ã¤ã«ã ãã 103æãåºãã¦ã©ããã«ç½®ãã¦ããã ãã§åé¡ãªãã 104boostããã±ã¼ã¸ãå±éãã¦åºæ¥ããboostãã¨ãããã£ã¬ã¯ããªãã©ããã« 105ç½®ãã¦ãããã³ã³ãã¤ã«æã«ã-I(ãã®å ´æ)ãã¨ããã°ããã 106 107<P> 108 109ä¾ãã°/usr/local/includeã«ç½®ãããªãã 110<P> 111cc -I/usr/local/include hoge.cc 112<P> 113ã«ã¬ã³ããã£ã¬ã¯ããªã«ç½®ãããªã 114<P> 115cc -I. hoge.cc 116<P> 117 118ã¨ããæãã 119 120 121<H3> 1223.1 intervalã¸ã®patch 123</H3> 124 125ublasã®æ¹ã¯é »ç¹ã«æ´æ°ããã¦ããããå®ã¯intervalã®æ¹ã¯ 126ã»ã¨ãã©æ´æ°ããã¦ããããããèåããªé¨åãè¦åããããã 127ããã°ã©ã ã使ããªãããã©ããã¦ãããã¯ç´ãã¦æ¬²ããã¨ãã 128é¨åãããã¤ãè¦ä»ãã£ãã®ã§ãæ¬ä½ã«ç´æ¥æãå ¥ãããã¨ã«ããã 129 130<P> 131 132以ä¸ã«ãã®å¤æ´ç¹ãpatchã®å½¢ã§ç¤ºãã 133 134<UL> 135<LI> <A HREF="patch/boost-1.50.0.diff">boost 1.50以éç¨patch</A> 136<FONT SIZE=-1> 137<LI> <A HREF="patch/boost-1.46.1.diff">boost 1.46.1-1.49.0ç¨patch</A> 138<LI> <A HREF="patch/boost-1.44.0.diff">boost 1.44ç¨patch</A> 139<LI> <A HREF="patch/boost-1.43.0.diff">boost 1.43以åç¨patch</A> 140</FONT> 141</UL> 142 143boostãã£ã¬ã¯ããªã®è¦ãã¦ããå ´æã§ã 144<TT>patch -p0 < boost-1.xx.x.diff</TT>ã¨ããã°ããããå½ã¦ãããã<BR> 145ãã®patchã¯ã以ä¸ã®å 容ãå«ãã 146 147<UL> 148<LI> 丸ãã®åãã®å¤æ´ã«ã¤ãã¦ã 149 <UL> 150 <LI> Windows/Linux/Mac OS X 151 <LI> 32bit/64bit 152 <LI> SSE2ãã/ç¡ã 153 </UL> 154ã®ãããã®çµåãã§ãæ£ããé«éã«åãããã«ããã 155(ç¹ã«Visual C++ã§é ãã®ãããæ¹åãããã) 156<LI>
156 intervalã®ã³ã³ã¹ãã©ã¯ã¿ã«é¢ãã¦ãis_convertibleã¨enable_ifãç¨ã㦠157å®å ¨åãããå ·ä½çã«ã¯ãinterval<T>ãT1ã§ 158åæåãããããªã³ã¼ããæ¸ããã¨ããå ã®ã³ã¼ãã§ã¯ã¯ç¡æ¡ä»¶ã« 159ãã®ã³ã³ã¹ãã©ã¯ã¿ãçæããã¦ãã¾ã£ã¦ãããã 160T1ããTã«å¤æå¯è½ãªå ´åã®ã¿ããã®ã³ã³ã¹ãã©ã¯ã¿ãçæããããã«ããã 161è¤éã«å ¥ãåã«ãªã£ãã¯ã©ã¹ãæ±ãã¨å ã®ã¾ã¾ã§ã¯é大ãªåé¡ãå¼ãèµ·ããã 162<LI> interval<double>+intã®ãããªã 163ãinterval<T>ã¨Tã«å¤æå¯è½ãªå®æ°ã®ååæ¼ç®ããå¯è½ã«ããã 164<LI> -O3ãªã©å¼·åã«æé©åãããã¦ã大ä¸å¤«ãªããã«ãæé©åæå¶ãä¸å¯§ã«ããã 165<LI> intervalã®åºåã«é¢ãã軽微ãªä¿®æ£ã 166<LI> VC++ 64bitã§ã®rintåé¡ã®ä¿®æ£ã 167<LI> gcc 4.7以éã§ã®to_intåé¡ã®ä¿®æ£ 168</UL> 169 170ææ¨ã®éçºãã¦ããããã°ã©ã ã¯ããã¯ãpatchã®å½ãã£ãintervalã 171åæã«æ¸ãã¦ããã 172 173<BLOCKQUOTE> 174<FONT COLOR="gray" SIZE=-1> 175ææããããªãããã« 176<UL> 177<LI> 178<A HREF="headers/boost-1.54.0-headers-patched.tar.gz"> 179patchãå½ã¦ãboostã®å ¨header (1.54.0) 180</A> 181<LI> 182<A HREF="headers/boost-1.54.0-interval-headers.tar.gz"> 183patchãå½ã¦ã<TT>boost/numeric/interval/</TT>ä»¥ä¸ (1.54.0) 184</A> 185</UL> 186ãç½®ãã¦ããã®ã§ãã使ã£ã¦ããããã 187</FONT> 188</BLOCKQUOTE> 189 190<H2> 1914. åºéæ¼ç®(interval) 192</H2> 193 194<H3> 1954.1 æ¦è¦ 196</H3> 197 198æ°å¤ãã[ä¸ç«¯, ä¸ç«¯] ã®ãããª2ã¤ã®æ°ã®çµã§è¡¨ãããéåºéã§è¡¨ãã 199ãçµæã¨ãã¦æãå¾ãæ°å¤ã®ç¯å²ãå å«ããããã«ãæ¼ç®ãè¡ãæ¹æ³ã§ããã 200åºéã®ä¸ç«¯ã¨ä¸ç«¯ãè¡¨ãæ°ã®åã¯ãã³ãã¬ã¼ãã«ãªã£ã¦ããã 201doubleã ãã§ç¡ãä»ã®åã使ããã¨ãåºæ¥ãã 202 203<H3> 2044.2 ä½¿ãæ¹ 205</H3> 206 207ä½¿ãæ¹ã®ãµã³ãã« 208(<A HREF="sample/test-interval.cc">test-interval.cc</A>) 209ãè¦ã¦æ¬²ãããåºæ¬çãªä½¿ãæ¹ã¯ããã§ååã¨æãã 210詳細㯠211<A HREF="http://www.boost.org/doc/libs/">Boost Library Documentation</A> 212ã®ä¸ã® 213<A HREF="http://www.boost.org/doc/libs/release/libs/numeric/interval/doc/interval.htm">Intervalã®é </A>ãåç §ã®ãã¨ã 214<A HREF="http://www.kmonos.net/alang/boost/classes/interval.html">æ¥æ¬èªã®è§£èª¬</A>ãåèã«ãªãããã 215<P> 216<TT>boost::numeric::</TT>ã¨ã<TT>std::</TT>ã¨ãé·ãã¦é¢å㨠217æãã ãããã<TT>using namespace</TT>ã使ãã®ãå¸¸å¥ææ®µã ããã 218(<A HREF="sample/test-interval2.cc">test-interval2.cc</A>)ã 219<TT>std</TT>ãªãã¨ããã<TT>interval</TT>ãªãã¦å¾ä½ã®ç¥ããªããã®ã 220åå空éã«å¼ã£å¼µãåºãã®ã¯æ°æã¡æªãã¨æããªãã 221<TT>typedef</TT>ã使ãæããã 222(<A HREF="sample/test-interval3.cc">test-interval3.cc</A>)ã 223<TT>namespace</TT>ã®å¥åã使ã£ã¦ç縮ããæ¹æ³ãããã 224(<A HREF="sample/test-interval4.cc">test-interval4.cc</A>)ã 225 226<H3> 2274.3 crlibmã¨çµã¿åããã 228</H3> 229 230åºéæ¼ç®ãè¡ãä¸ã§sinãªã©ã®æ°å¦é¢æ°ãã©ããããã¯é大ãªåé¡ã§ããã 231boost::intervalã§ã¯sin_down, sin_upãªã©ã®sinãä¸åã丸ããä¸åã丸ãã§ 232è¨ç®ãããããªé¢æ°ããèªåã§ç¨æããã°ãsinã®åºéæ¼ç®ãè¡ããã¨ãåºæ¥ãã 233ããã§ã 234<A HREF="http://lipforge.ens-lyon.fr/www/crlibm/"> 235CRlibm(Correctly Rounded mathematical library) 236</A> 237ã¨çµã¿åããã¦ãboostã§ã®æ°å¦é¢æ°ã®åºéæ¼ç®ãè¡ããã¨ã«ããã 238<P> 239crlibmã®makeã¯è¦å´ããããã ãé å¼µã£ã¦ä¸ããã 240ç¾ç¶ã§ã¯ãã¶ãUNIXç³»OSã®ã¿ã§ãwindowsä¸å¯ã 241<P> 242boostã§crlibmã使ãããã«ã 243<A HREF="sample/use-crlibm.hpp">use-crlibm.hpp</A> 244ã使ããã 245<A HREF="sample/test-crlibm.cc">test-crlibm.cc</A> 246ã®ããã«use-crlibm.hppãincludeããintervalåã¯policyã夿´ã㦠247crlibmã使ãããã«ããã 248ã³ã³ãã¤ã«ããã¨ã㯠249<PRE> 250g++ -I/usr/local/include -L/usr/local/lib test-crlibm.cc -lcrlibm 251</PRE> 252ã®ããã«ãcrlibmã®headerã¨libraryã®ãããããã¡ãã¨æãã¦-lcrlibmãä»ããã 253 254<H3> 2554.4 å ¥åºåã«æ³¨æ 256</H3> 257 258boost.intervalã¯ãæ®å¿µãªãã¨ã«10鲿°ã¨2鲿°ã®ç¸äºå¤æã«é¢ãã¦
259ã»ã¨ãã©ãµãã¼ããç¡ãã 260<P> 261æ°å¤ã®å ¥åã«é¢ãã¦è¨ãã°ã 262<A HREF="sample/test-interval5.cc">test-interval5.cc</A>ã®ããã« 263ä¾ãã°10鲿°ã®0.1ãåºéæ¼ç®ã§æ±ãã«ã¯æ³¨æãå¿ è¦ã§ããã 264<P> 265æ°å¤ã®åºåã«ã¤ãã¦ã¯ã<TT>boost/numeric/interval/io.hpp</TT>ã 266includeããã°åºéã表示ã§ããããããã¯åã«C++æ¨æºã®æ¹æ³ã§(æè¿ç¹ã¸ã®ä¸¸ãã§) 267ä¸ç«¯ãä¸ç«¯ã表示ãã¦ããã ãã§ããããã®ã¤ããã§è¦ãå¿ è¦ãããã 268æ£ããã¯ãä¸ç«¯ã¯ä¸åã丸ãã§ãä¸ç«¯ã¯ä¸åã丸ãã§10鲿°ã«å¤æãã¹ãã§ 269ããããããã¯ãªã£ã¦ããªãã 270 271<H3> 2724.5 丸ãã®åãã®å¤æ´ 273</H3> 274 275åºéæ¼ç®ãè¡ãéã®ä¸¸ãã®åãã®å¤æ´ã¯boost.intervalã®å é¨ã§ 276ãã¡ãã¨è¡ãããããèªä½ããã°ã©ã ã®ä¸é¨ã§ä¸¸ãã®åãã夿´ããããã¨ã 277ããã§ãããããã®å ´åã¯ã 278<A HREF="sample/test-rounding.cc">test-rounding.cc</A>ã®ããã« 279è¡ãã°ããã 280ãã ãã丸ãã®åãã®å¤æ´ã¯ã³ã³ãã¤ã©ã®æé©åã大æµã§ã 281æ®éã«ã³ã³ãã¤ã«ãããæ£ããåãã¦ããããã«è¦ãããã®ã <TT>-O3</TT> 282ã ã¨ãã¾ãåããªããããªãã¨ãããèµ·ããã 283<TT>force_rounding</TT>(ä¸ãããã弿°ã<TT>volatile</TT>夿°ã«ä»£å ¥ãããã¨ã« 284ãã£ã¦ãæé©åã«ããè¨ç®å¼ã®é¤å»ãé²ã)ã使ããªã©ãã¦ã 285æ éã«è¨è¿°ããå¿ è¦ãããã 286 287<H2> 2885. è¡åè¨ç®(ublas) 289</H2> 290 291<H3> 2925.1 æ¦è¦ 293</H3> 294 295ublasã¯ãè¡åè¨ç®ãè¡ããã³ãã¬ã¼ãã©ã¤ãã©ãªã§ããã 296è¡åããã¯ãã«ã®åè¦ç´ ã¯ãã³ãã¬ã¼ãã«ãªã£ã¦ãããdoubleã 297floatã°ããã§ãªãintervalãå ¥ããããèªä½ã®åãå ¥ãããã¨ãåºæ¥ãã 298èªåå¾®åãªã©ã®ç¹æ®ãªåã使ããã¨ãå¤ãéç·å½¢è¨ç®ã®ç²¾åº¦ä¿è¨¼ã«ã¯ 299ãã£ã¦ã¤ãã®ã©ã¤ãã©ãªã§ããã¨è¨ããã 300 301<P> 302 303ãªããblasã¨ããååããé«éã«åä½ãããããªã¤ã¡ã¼ã¸ãæã¤ãã 304ç¥ããªãããblasã¨åçã®ã¤ã³ã¿ã¼ãã§ã¼ã¹ãæã¤ã¨ããæå³ã§ 305ublasã¨åä»ãããã¦ãããç¹ã«é«éãªããã§ã¯ãªã 306(èªåã§forã«ã¼ããåãã¦æ¸ããããã°ã©ã ã¨åç¨åº¦)ã 307 308<H3> 3095.2 ä½¿ãæ¹ 310</H3> 311 312<UL> 313<LI> 314ä½¿ãæ¹ã®ãµã³ãã« 315(<A HREF="sample/test-ublas.cc">test-ublas.cc</A>) 316<LI> 317LUåè§£ãå©ç¨ããéè¡åè¨ç®ã®ãµã³ãã« 318(<A HREF="sample/test-invert.cc">test-invert.cc</A>, 319<A HREF="sample/matrix-inversion.hpp">matrix-inversion.hpp</A>) 320<LI> 321è¦ç´ ãåºéã«ãããµã³ãã« 322(<A HREF="sample/test-ublas-interval.cc">test-ublas-interval.cc</A>) 323</UL> 324 325詳細㯠326<A HREF="http://www.boost.org/doc/libs/">Boost Library Documentation</A> 327ã®ä¸ã® 328<A HREF="http://www.boost.org/doc/libs/release/libs/numeric/ublas/doc/index.htm">ublasã®é </A>ãåç §ã®ãã¨ã 329<A HREF="http://www.kmonos.net/alang/boost/classes/ublas.html">æ¥æ¬èªã®è§£èª¬</A>ãåèã«ãªãããã 330 331<A HREF="http://www.page.sannet.ne.jp/d_takahashi/boost/ublas/index.html"> 332boost::numeric::ublas ç·å½¢ä»£æ°ã©ã¤ãã©ãªã®ä½¿ãæ¹ 333</A> 334ã大å¤åèã«ãªãã 335 336 337<P> 338ãªããSTLã®ä¸é¨ã¨ãã¦<TT>std::vector</TT>ãåå¨ããããã 339<TT>using namespace std;</TT>ãã¦ããå ´åãªã©ã« 340<TT>boost::numeric::ublas::vector</TT>ã¨è¡çªãã¦ã¨ã©ã¼ã«ãªãããã 341(<A HREF="sample/test-ublas2.cc">test-ublas2.cc</A>)ã 342<A HREF="sample/test-ublas3.cc">test-ublas3.cc</A>ã®ããã« 343ublasã®vectorã¯æç¤ºçã«æå®ãããã¨ã«ãã¦using namespaceã«é ¼ããªãã®ã 344å®å ¨ããç¥ããªãã 345 346<H3> 3475.3 ãã¯ã<TT>NDEBUG</TT>ã«ã¤ã㦠348</H3> 349ublasã§ã¯Expression Templateã¨å¼ã°ããææ³ãç¨ãã 350ä½åãªä¸æå¤æ°ã使ããªããã¨ã§é«éåãå³ã£ã¦ããã 351ä½ãããã®æ©è½ã¯ã³ã³ãã¤ã«æã« <TT>-DNDEBUG</TT>ãä»ã㦠352<TT>NDEBUG</TT>ãã¯ããå®ç¾©ããå ´åã®ã¿æå¹ã«ãªãã 353<TT>NDEBUG</TT>ã¯C++ã«ããã¦releaseç(debugçã§ç¡ã)ã 354makeããå ´åã«ä»å ãããã¯ãã¨ãã¦ä¸è¬çã§ãããå®éVisual C++ã§ 355releaseçã¨ãã¦buildããã¨èªåçã«ãã®ãã¯ããä»å ãããã 356<P> 357ãªããublasã§ã¯ã<TT>NDEBUG</TT>ãã¯ããå®ç¾©ããã¦ããªãå ´å㯠358é åã®æ·»å溢ãã®ãã§ãã¯ãè¡ããããã<TT>NDEBUG</TT>ãå®ç¾©ãã㨠359ãã§ãã¯ãçããã¦é«éåãããããã«ãªã£ã¦ããã 360 361<H2> 3626. å ¨è§£æ¢ç´¢ããã°ã©ã ãåãã 363</H2> 364 365大ããã®ããã°ã©ã ã¨ãã¦ãéç·å½¢æ¹ç¨å¼ã®å ¨è§£æ¢ç´¢ãè¡ã
366ããã°ã©ã ã®ãµã³ãã«ã示ããé«éåã®ããã®åã£ã工夫ãåãé¤ãã 367ã·ã³ãã«ãªãã®ã§ããã 368 369<UL> 370<LI> 371<A HREF="sample/allsol-simple.hpp">allsol-simple.hpp</A> : å ¨è§£æ¢ç´¢ããã°ã©ã æ¬ä½ 372<LI> 373<A HREF="sample/test-allsol-simple.cc">test-allsol-simple.cc</A> : å ¨è§£æ¢ç´¢ãè¡ãsample (main) 374<LI> 375<A HREF="sample/autodif.hpp">autodif.hpp</A> : èªåå¾®åã¯ã©ã¹ 376<LI> 377<A HREF="sample/ivector-uty.hpp">ivector-uty.hpp</A> : åºéè¡åã»ãã¯ãã«ã«é¢ããããã¤ãã®é¢æ° 378<LI> 379<A HREF="sample/matrix-inversion.hpp">matrix-inversion.hpp</A> : éè¡å 380</UL> 381 382å¿ è¦ãªã®ã¯ãããã®ãã¡ã¤ã«ã 383<A HREF="sample/test-allsol-simple.cc">test-allsol-simple.cc</A> 384ãã³ã³ãã¤ã«ãå®è¡ããã°ã 385ãã®ä¸ã§å®ç¾©ãããéç·å½¢é¢æ°ã®å ¨è§£æ¢ç´¢ãè¡ãããã 386 387 388<P> 389 390<A HREF="sample/test-allsol-simple.cc">test-allsol-simple.cc</A> 391ã§ã®è§£ããã颿°ã®å®ç¾©ã®ä»æ¹ãåããã«ããããç¥ããªãã 392è§£ããã颿°ãã¨ã«ã¯ã©ã¹ãå®ç¾©ãããã®ã¯ã©ã¹ã§ã¯ 393<TT>operator()</TT>ããªã¼ãã¼ãã¼ãããã 394ãã®ã¯ã©ã¹ã®ã¤ã³ã¹ã¿ã³ã¹<TT>f</TT>ã«å¯¾ãã¦<TT>f(x)</TT>ã¨æ¸ã㨠395<TT>operator()</TT>ã弿°<TT>x</TT>ã§å¼ã³åºãããã®ã§ã 396ããã«é¢æ°ã®å®ç¾©ãæ¸ããã¤ã³ã¹ã¿ã³ã¹<TT>f</TT>ã颿°ã¨ã¿ãªãã 397ããã¯é¢æ°ãªãã¸ã§ã¯ãã¨å¼ã°ããææ³ã§ã颿°ãã¤ã³ã¿ã使ãããã 398ä¸è¬çã«ãªã¼ãã¼ããããå°ãªãã 399 400<H2> 4017. æ°å¤åã®ããã°ã©ãã³ã° 402</H2> 403 404ããã¾ã§ã¯ãæ¢åã®intervalã¨ublasã®ä½¿ãæ¹ã説æãã¦ãããã 405精度ä¿è¨¼ä»ãæ°å¤è¨ç®ã§ã¯ãèªåå¾®åãªã©ãã以å¤ã®ãæ°å¤ã£ã½ãæ¯ãèããããåã 406ãèªä½ããå¿ è¦ãããã 407ç¹ã«èªä½åãå ¥ãåã«ããå ´åãªã©ã注æãã¹ãç¹ãå¤ãã®ã§ã 408ãã®æ¹æ³ã <A HREF="numbertype/index.html">æ°å¤åã®ããã°ã©ãã³ã°</A> 409ã«ã¾ã¨ããã 410 411<H2> 4128. Affine Arithmetic 413</H2> 414 415<A HREF="affine/index.html">Affine Arithmetic</A> 416ã«ã¾ã¨ããã 417 418<H2> 4199. ãããã« 420</H2> 421 422ã¾ã æ¸ãã¦ãªããèªåå¾®åã¨ãpsaã¨ãã«ã¤ãã¦æ¸ãäºå®ã 423ã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦ãå ¨è§£æ¢ç´¢ã¨ãODEã¨ãæ°å¤ç©åã¨ããã 424<P> 425ublasã§å é¨åãdoubleã®å ´åã«lapack/blasãä½¿ãæ¹æ³ã 426intervalã®å é¨åã¨ãã¦mpfråã使ãä»»æç²¾åº¦åºéæ¼ç®ãè¡ãæ¹æ³ã 427ãªã©ãæ¸ãã¦ããããã 428 429<H2> 430夿´å±¥æ´ 431</H2> 432 433<A HREF="history.html">夿´å±¥æ´</A>åç §ã 434 435<HR> 436 437</BODY> 438</HTML>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.