dep-selector-libgecode 1.0.0.alpha.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (806) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +26 -0
  3. data/Gemfile +3 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/Rakefile +20 -0
  7. data/dep-selector-libgecode.gemspec +25 -0
  8. data/ext/libgecode3/Makefile +8 -0
  9. data/ext/libgecode3/extconf.rb +57 -0
  10. data/ext/libgecode3/vendor/gecode-3.7.3/LICENSE +25 -0
  11. data/ext/libgecode3/vendor/gecode-3.7.3/Makefile.contribs +88 -0
  12. data/ext/libgecode3/vendor/gecode-3.7.3/Makefile.dep +11307 -0
  13. data/ext/libgecode3/vendor/gecode-3.7.3/Makefile.in +1795 -0
  14. data/ext/libgecode3/vendor/gecode-3.7.3/changelog.in +6132 -0
  15. data/ext/libgecode3/vendor/gecode-3.7.3/configure +13054 -0
  16. data/ext/libgecode3/vendor/gecode-3.7.3/configure.ac +356 -0
  17. data/ext/libgecode3/vendor/gecode-3.7.3/configure.ac.in +352 -0
  18. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/README +26 -0
  19. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/AbstractWorker.hh +42 -0
  20. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Doxyfile +263 -0
  21. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Makefile.in.in +162 -0
  22. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/OptVar.cc +82 -0
  23. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/OptVar.hh +124 -0
  24. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/QCOPPlus.cc +306 -0
  25. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/QCOPPlus.hh +166 -0
  26. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/QCSPPlusUnblockable.cc +239 -0
  27. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/QCSPPlusUnblockable.hh +140 -0
  28. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/README +6 -0
  29. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Strategy.cc +253 -0
  30. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Strategy.hh +112 -0
  31. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/StrategyNode.cc +59 -0
  32. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/StrategyNode.hh +49 -0
  33. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/UnblockableBranching.hh +34 -0
  34. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/UnblockableViewValBranching.cc +61 -0
  35. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/UnblockableViewValBranching.hh +45 -0
  36. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Work.cc +48 -0
  37. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Work.hh +64 -0
  38. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/WorkComparators.hh +67 -0
  39. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/WorkManager.cc +376 -0
  40. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/WorkManager.hh +96 -0
  41. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Worker.cc +285 -0
  42. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/Worker.hh +70 -0
  43. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/clean +5 -0
  44. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/configure +2637 -0
  45. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/configure.ac +44 -0
  46. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/myDom.cc +59 -0
  47. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/myspace.cc +119 -0
  48. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/myspace.hh +79 -0
  49. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qecode.hh +56 -0
  50. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_parallel.cc +41 -0
  51. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_parallel.hh +43 -0
  52. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_qcop.cc +268 -0
  53. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_qcop.hh +56 -0
  54. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_qcsp.cc +163 -0
  55. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_qcsp.hh +63 -0
  56. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_unblockable.cc +423 -0
  57. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/qsolver_unblockable.hh +84 -0
  58. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/shortdesc.ac +1 -0
  59. data/ext/libgecode3/vendor/gecode-3.7.3/contribs/qecode/vartype.hh +31 -0
  60. data/ext/libgecode3/vendor/gecode-3.7.3/doxygen/doxygen.conf.in +1245 -0
  61. data/ext/libgecode3/vendor/gecode-3.7.3/doxygen/doxygen.hh.in +594 -0
  62. data/ext/libgecode3/vendor/gecode-3.7.3/examples/all-interval.cpp +136 -0
  63. data/ext/libgecode3/vendor/gecode-3.7.3/examples/alpha.cpp +151 -0
  64. data/ext/libgecode3/vendor/gecode-3.7.3/examples/bacp.cpp +596 -0
  65. data/ext/libgecode3/vendor/gecode-3.7.3/examples/bibd.cpp +182 -0
  66. data/ext/libgecode3/vendor/gecode-3.7.3/examples/bin-packing.cpp +25363 -0
  67. data/ext/libgecode3/vendor/gecode-3.7.3/examples/black-hole.cpp +413 -0
  68. data/ext/libgecode3/vendor/gecode-3.7.3/examples/car-sequencing.cpp +653 -0
  69. data/ext/libgecode3/vendor/gecode-3.7.3/examples/crew.cpp +269 -0
  70. data/ext/libgecode3/vendor/gecode-3.7.3/examples/crossword.cpp +3954 -0
  71. data/ext/libgecode3/vendor/gecode-3.7.3/examples/crowded-chess.cpp +424 -0
  72. data/ext/libgecode3/vendor/gecode-3.7.3/examples/dominating-queens.cpp +170 -0
  73. data/ext/libgecode3/vendor/gecode-3.7.3/examples/domino.cpp +346 -0
  74. data/ext/libgecode3/vendor/gecode-3.7.3/examples/donald.cpp +135 -0
  75. data/ext/libgecode3/vendor/gecode-3.7.3/examples/efpa.cpp +323 -0
  76. data/ext/libgecode3/vendor/gecode-3.7.3/examples/eq20.cpp +128 -0
  77. data/ext/libgecode3/vendor/gecode-3.7.3/examples/golf.cpp +190 -0
  78. data/ext/libgecode3/vendor/gecode-3.7.3/examples/golomb-ruler.cpp +157 -0
  79. data/ext/libgecode3/vendor/gecode-3.7.3/examples/graph-color.cpp +425 -0
  80. data/ext/libgecode3/vendor/gecode-3.7.3/examples/grocery.cpp +116 -0
  81. data/ext/libgecode3/vendor/gecode-3.7.3/examples/hamming.cpp +144 -0
  82. data/ext/libgecode3/vendor/gecode-3.7.3/examples/ind-set.cpp +144 -0
  83. data/ext/libgecode3/vendor/gecode-3.7.3/examples/kakuro.cpp +627 -0
  84. data/ext/libgecode3/vendor/gecode-3.7.3/examples/knights.cpp +430 -0
  85. data/ext/libgecode3/vendor/gecode-3.7.3/examples/langford-number.cpp +218 -0
  86. data/ext/libgecode3/vendor/gecode-3.7.3/examples/magic-sequence.cpp +133 -0
  87. data/ext/libgecode3/vendor/gecode-3.7.3/examples/magic-square.cpp +141 -0
  88. data/ext/libgecode3/vendor/gecode-3.7.3/examples/minesweeper.cpp +311 -0
  89. data/ext/libgecode3/vendor/gecode-3.7.3/examples/money.cpp +132 -0
  90. data/ext/libgecode3/vendor/gecode-3.7.3/examples/nonogram.cpp +1215 -0
  91. data/ext/libgecode3/vendor/gecode-3.7.3/examples/open-shop.cpp +412 -0
  92. data/ext/libgecode3/vendor/gecode-3.7.3/examples/ortho-latin.cpp +183 -0
  93. data/ext/libgecode3/vendor/gecode-3.7.3/examples/partition.cpp +145 -0
  94. data/ext/libgecode3/vendor/gecode-3.7.3/examples/pentominoes.cpp +952 -0
  95. data/ext/libgecode3/vendor/gecode-3.7.3/examples/perfect-square.cpp +317 -0
  96. data/ext/libgecode3/vendor/gecode-3.7.3/examples/photo.cpp +166 -0
  97. data/ext/libgecode3/vendor/gecode-3.7.3/examples/queen-armies.cpp +335 -0
  98. data/ext/libgecode3/vendor/gecode-3.7.3/examples/queens.cpp +214 -0
  99. data/ext/libgecode3/vendor/gecode-3.7.3/examples/radiotherapy.cpp +943 -0
  100. data/ext/libgecode3/vendor/gecode-3.7.3/examples/sat.cpp +260 -0
  101. data/ext/libgecode3/vendor/gecode-3.7.3/examples/schurs-lemma.cpp +142 -0
  102. data/ext/libgecode3/vendor/gecode-3.7.3/examples/scowl.hpp +14149 -0
  103. data/ext/libgecode3/vendor/gecode-3.7.3/examples/sports-league.cpp +353 -0
  104. data/ext/libgecode3/vendor/gecode-3.7.3/examples/steel-mill.cpp +654 -0
  105. data/ext/libgecode3/vendor/gecode-3.7.3/examples/steiner.cpp +170 -0
  106. data/ext/libgecode3/vendor/gecode-3.7.3/examples/sudoku.cpp +2294 -0
  107. data/ext/libgecode3/vendor/gecode-3.7.3/examples/tsp.cpp +339 -0
  108. data/ext/libgecode3/vendor/gecode-3.7.3/examples/warehouses.cpp +185 -0
  109. data/ext/libgecode3/vendor/gecode-3.7.3/examples/word-square.cpp +168 -0
  110. data/ext/libgecode3/vendor/gecode-3.7.3/gecode.m4 +1272 -0
  111. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/driver.hh +602 -0
  112. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/driver/options.cpp +435 -0
  113. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/driver/options.hpp +418 -0
  114. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/driver/script.cpp +104 -0
  115. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/driver/script.hpp +388 -0
  116. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc.hh +417 -0
  117. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/CHANGES +63 -0
  118. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/ast.hh +492 -0
  119. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/conexpr.hh +82 -0
  120. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/exampleplugin/myplugin.cpp +49 -0
  121. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/exampleplugin/myplugin.hh +47 -0
  122. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/exampleplugin/myplugin.pro +51 -0
  123. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/exampleplugin/test_myplugin.fzn +1 -0
  124. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/flatzinc.cpp +1056 -0
  125. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/lexer.lxx +137 -0
  126. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/lexer.yy.cpp +2458 -0
  127. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/all_different_int.mzn +37 -0
  128. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/all_equal_int.mzn +37 -0
  129. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/among.mzn +37 -0
  130. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/at_least_int.mzn +37 -0
  131. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/at_least_set.mzn +38 -0
  132. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/at_most_int.mzn +37 -0
  133. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/at_most_set.mzn +38 -0
  134. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/bin_packing.mzn +44 -0
  135. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/bin_packing_capa.mzn +45 -0
  136. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/bin_packing_load.mzn +45 -0
  137. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/circuit.mzn +40 -0
  138. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/count.mzn +37 -0
  139. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/cumulative.mzn +53 -0
  140. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/decreasing_bool.mzn +37 -0
  141. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/decreasing_int.mzn +37 -0
  142. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/diffn.mzn +44 -0
  143. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/disjoint.mzn +37 -0
  144. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/distribute.mzn +46 -0
  145. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/exactly_int.mzn +40 -0
  146. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/exactly_set.mzn +38 -0
  147. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/gecode.mzn +98 -0
  148. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/global_cardinality.mzn +43 -0
  149. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/global_cardinality_closed.mzn +39 -0
  150. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/global_cardinality_low_up.mzn +40 -0
  151. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/global_cardinality_low_up_closed.mzn +40 -0
  152. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/increasing_bool.mzn +37 -0
  153. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/increasing_int.mzn +37 -0
  154. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/int_set_channel.mzn +49 -0
  155. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/inverse.mzn +42 -0
  156. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/lex_less_int.mzn +42 -0
  157. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/lex_lesseq_int.mzn +42 -0
  158. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/link_set_to_booleans.mzn +47 -0
  159. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/maximum_int.mzn +37 -0
  160. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/member_bool.mzn +41 -0
  161. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/member_int.mzn +41 -0
  162. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/minimum_int.mzn +37 -0
  163. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/nvalue.mzn +37 -0
  164. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/partition_set.mzn +42 -0
  165. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/precedence.mzn +41 -0
  166. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/range.mzn +51 -0
  167. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/redefinitions.mzn +62 -0
  168. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/regular.mzn +38 -0
  169. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/roots.mzn +63 -0
  170. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/sort.mzn +37 -0
  171. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/sum_pred.mzn +42 -0
  172. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/table_bool.mzn +37 -0
  173. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/mznlib/table_int.mzn +37 -0
  174. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/option.hh +70 -0
  175. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/parser.hh +265 -0
  176. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/parser.tab.cpp +3571 -0
  177. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/parser.tab.hh +164 -0
  178. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/parser.yxx +1604 -0
  179. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/plugin.hh +83 -0
  180. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/registry.cpp +1812 -0
  181. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/registry.hh +71 -0
  182. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/symboltable.hh +96 -0
  183. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/flatzinc/varspec.hh +163 -0
  184. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist.hh +298 -0
  185. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/drawingcursor.cpp +288 -0
  186. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/drawingcursor.hh +110 -0
  187. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/drawingcursor.hpp +84 -0
  188. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/gecodelogo.cpp +673 -0
  189. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/gecodelogo.hh +65 -0
  190. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/gist.cpp +120 -0
  191. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/gist.hpp +207 -0
  192. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/layoutcursor.hh +69 -0
  193. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/layoutcursor.hpp +70 -0
  194. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/mainwindow.cpp +341 -0
  195. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/mainwindow.hh +129 -0
  196. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/node.cpp +82 -0
  197. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/node.hh +160 -0
  198. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/node.hpp +210 -0
  199. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodecursor.hh +215 -0
  200. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodecursor.hpp +271 -0
  201. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodestats.cpp +138 -0
  202. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodestats.hh +81 -0
  203. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodevisitor.hh +96 -0
  204. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodevisitor.hpp +126 -0
  205. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodewidget.cpp +90 -0
  206. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/nodewidget.hh +59 -0
  207. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/preferences.cpp +190 -0
  208. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/preferences.hh +96 -0
  209. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/qtgist.cpp +809 -0
  210. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/qtgist.hh +294 -0
  211. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/spacenode.cpp +369 -0
  212. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/spacenode.hh +221 -0
  213. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/spacenode.hpp +191 -0
  214. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/standalone-example/mygist.cpp +80 -0
  215. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/standalone-example/standalone_example.pro +18 -0
  216. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/stopbrancher.cpp +90 -0
  217. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/stopbrancher.hh +82 -0
  218. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/textoutput.cpp +175 -0
  219. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/textoutput.hh +75 -0
  220. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/treecanvas.cpp +1430 -0
  221. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/treecanvas.hh +369 -0
  222. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/visualnode.cpp +473 -0
  223. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/visualnode.hh +237 -0
  224. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/visualnode.hpp +220 -0
  225. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/gist/zoomToFitIcon.hpp +114 -0
  226. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int.hh +3477 -0
  227. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic.cpp +185 -0
  228. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic.hh +666 -0
  229. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic/abs.hpp +236 -0
  230. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic/divmod.hpp +350 -0
  231. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic/max.hpp +398 -0
  232. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic/mult.hpp +750 -0
  233. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic/sqr.hpp +377 -0
  234. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/arithmetic/sqrt.hpp +217 -0
  235. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/array-traits.hpp +147 -0
  236. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/array.cpp +113 -0
  237. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/array.hpp +111 -0
  238. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bin-packing.cpp +71 -0
  239. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bin-packing.hh +184 -0
  240. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bin-packing/propagate.cpp +388 -0
  241. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bin-packing/propagate.hpp +219 -0
  242. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool.cpp +755 -0
  243. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool.hh +581 -0
  244. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool/base.hpp +137 -0
  245. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool/clause.hpp +353 -0
  246. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool/eq.hpp +196 -0
  247. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool/eqv.cpp +104 -0
  248. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool/eqv.hpp +202 -0
  249. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool/lq.hpp +241 -0
  250. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/bool/or.hpp +850 -0
  251. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch.cpp +152 -0
  252. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch.hh +607 -0
  253. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/post-val-bool.hpp +81 -0
  254. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/post-val-int.hpp +107 -0
  255. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/post-view-bool.bs +121 -0
  256. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/post-view-bool.cpp +438 -0
  257. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/post-view-int.bs +121 -0
  258. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/post-view-int.cpp +438 -0
  259. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/select-val.hpp +229 -0
  260. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/select-values.hpp +213 -0
  261. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/branch/select-view.hpp +364 -0
  262. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel.cpp +172 -0
  263. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel.hh +249 -0
  264. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel/base.hpp +78 -0
  265. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel/dom.hpp +332 -0
  266. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel/link-multi.cpp +241 -0
  267. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel/link-multi.hpp +84 -0
  268. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel/link-single.cpp +77 -0
  269. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel/link-single.hpp +71 -0
  270. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/channel/val.hpp +256 -0
  271. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/circuit.cpp +229 -0
  272. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/circuit.hh +160 -0
  273. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/circuit/base.hpp +270 -0
  274. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/circuit/dom.hpp +128 -0
  275. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/circuit/val.hpp +105 -0
  276. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count.cpp +417 -0
  277. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count.hh +410 -0
  278. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/int-base.hpp +80 -0
  279. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/int-eq.hpp +143 -0
  280. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/int-gq.hpp +137 -0
  281. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/int-lq.hpp +136 -0
  282. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/rel.hpp +281 -0
  283. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/view-base.hpp +131 -0
  284. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/view-eq.hpp +117 -0
  285. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/view-gq.hpp +109 -0
  286. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/count/view-lq.hpp +96 -0
  287. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative.cpp +432 -0
  288. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative.hh +745 -0
  289. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/basic.hpp +211 -0
  290. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/edge-finding.hpp +185 -0
  291. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/man-prop.hpp +127 -0
  292. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/opt-prop.hpp +171 -0
  293. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/overload.hpp +63 -0
  294. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/task-view.hpp +84 -0
  295. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/task.hpp +256 -0
  296. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulative/tree.hpp +272 -0
  297. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulatives.cpp +187 -0
  298. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulatives.hh +133 -0
  299. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/cumulatives/val.hpp +380 -0
  300. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct.cpp +97 -0
  301. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct.hh +314 -0
  302. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct/bnd.hpp +444 -0
  303. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct/dom-ctrl.hpp +81 -0
  304. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct/dom.hpp +123 -0
  305. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct/graph.hpp +266 -0
  306. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct/ter-dom.hpp +113 -0
  307. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/distinct/val.hpp +185 -0
  308. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/dom.cpp +135 -0
  309. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/dom.hh +118 -0
  310. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/dom/range.hpp +105 -0
  311. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/dom/spec.hpp +124 -0
  312. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/element.cpp +190 -0
  313. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/element.hh +384 -0
  314. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/element/int.hpp +443 -0
  315. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/element/pair.cpp +151 -0
  316. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/element/pair.hpp +74 -0
  317. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/element/view.hpp +559 -0
  318. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/exception.hpp +196 -0
  319. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/exec.cpp +83 -0
  320. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/exec.hh +87 -0
  321. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/exec/when.cpp +77 -0
  322. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/exec/when.hpp +51 -0
  323. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional.cpp +124 -0
  324. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional.hh +508 -0
  325. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/base.hpp +163 -0
  326. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/basic.hpp +148 -0
  327. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/dfa.cpp +535 -0
  328. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/dfa.hpp +282 -0
  329. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/incremental.hpp +454 -0
  330. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/layered-graph.hpp +982 -0
  331. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/tuple-set.cpp +222 -0
  332. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/extensional/tuple-set.hpp +184 -0
  333. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc.cpp +172 -0
  334. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc.hh +268 -0
  335. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc/bnd-sup.hpp +608 -0
  336. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc/bnd.hpp +829 -0
  337. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc/dom-sup.hpp +1777 -0
  338. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc/dom.hpp +315 -0
  339. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc/post.hpp +169 -0
  340. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc/val.hpp +299 -0
  341. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/gcc/view.hpp +410 -0
  342. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/int-set-1.hpp +249 -0
  343. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/int-set-2.hpp +51 -0
  344. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/int-set.cpp +167 -0
  345. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/limits.hpp +94 -0
  346. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear-bool.cpp +196 -0
  347. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear-int.cpp +194 -0
  348. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear.hh +1560 -0
  349. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/bool-int.hpp +743 -0
  350. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/bool-post.cpp +602 -0
  351. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/bool-scale.hpp +695 -0
  352. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/bool-view.hpp +319 -0
  353. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/int-bin.hpp +439 -0
  354. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/int-dom.hpp +484 -0
  355. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/int-nary.hpp +864 -0
  356. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/int-noview.hpp +251 -0
  357. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/int-post.cpp +561 -0
  358. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/int-ter.hpp +273 -0
  359. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/linear/post.hpp +152 -0
  360. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/member.cpp +85 -0
  361. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/member.hh +125 -0
  362. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/member/prop.hpp +175 -0
  363. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/member/re-prop.hpp +178 -0
  364. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/no-overlap.cpp +226 -0
  365. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/no-overlap.hh +318 -0
  366. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/no-overlap/base.hpp +88 -0
  367. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/no-overlap/box.hpp +198 -0
  368. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/no-overlap/dim.hpp +197 -0
  369. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/no-overlap/man.hpp +119 -0
  370. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/no-overlap/opt.hpp +153 -0
  371. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues.cpp +244 -0
  372. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues.hh +429 -0
  373. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/bool-base.hpp +98 -0
  374. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/bool-eq.hpp +174 -0
  375. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/bool-gq.hpp +149 -0
  376. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/bool-lq.hpp +151 -0
  377. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/graph.hpp +283 -0
  378. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/int-base.hpp +347 -0
  379. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/int-eq.hpp +167 -0
  380. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/int-gq.hpp +130 -0
  381. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/int-lq.hpp +154 -0
  382. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/range-event.hpp +51 -0
  383. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/nvalues/sym-bit-matrix.hpp +69 -0
  384. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/precede.cpp +73 -0
  385. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/precede.hh +113 -0
  386. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/precede/single.hpp +232 -0
  387. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/propagator.hpp +311 -0
  388. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/rel.cpp +381 -0
  389. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/rel.hh +665 -0
  390. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/rel/eq.hpp +676 -0
  391. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/rel/lex.hpp +414 -0
  392. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/rel/lq-le.hpp +537 -0
  393. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/rel/nq.hpp +196 -0
  394. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sequence.cpp +197 -0
  395. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sequence.hh +154 -0
  396. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sequence/int.hpp +168 -0
  397. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sequence/set-op.hpp +154 -0
  398. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sequence/view.hpp +499 -0
  399. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sequence/violations.hpp +101 -0
  400. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sorted.cpp +82 -0
  401. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sorted.hh +107 -0
  402. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sorted/matching.hpp +173 -0
  403. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sorted/narrowing.hpp +250 -0
  404. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sorted/order.hpp +213 -0
  405. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sorted/propagate.hpp +646 -0
  406. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/sorted/sortsup.hpp +564 -0
  407. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/support-values.hh +154 -0
  408. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/support-values.hpp +187 -0
  409. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task.hh +454 -0
  410. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/array.hpp +179 -0
  411. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/fwd-to-bwd.hpp +102 -0
  412. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/iter.hpp +92 -0
  413. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/man-to-opt.hpp +100 -0
  414. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/prop.hpp +70 -0
  415. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/purge.hpp +74 -0
  416. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/sort.hpp +234 -0
  417. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/task/tree.hpp +189 -0
  418. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary.cpp +258 -0
  419. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary.hh +839 -0
  420. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/detectable.hpp +116 -0
  421. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/edge-finding.hpp +78 -0
  422. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/man-prop.hpp +78 -0
  423. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/not-first-not-last.hpp +133 -0
  424. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/opt-prop.hpp +116 -0
  425. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/overload.hpp +93 -0
  426. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/subsumption.hpp +55 -0
  427. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/task-view.hpp +105 -0
  428. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/task.hpp +532 -0
  429. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unary/tree.hpp +229 -0
  430. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/unshare.cpp +146 -0
  431. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/val-set.hh +118 -0
  432. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/val-set.hpp +186 -0
  433. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp.hpp +710 -0
  434. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp/bool.cpp +65 -0
  435. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp/bool.hpp +431 -0
  436. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp/bool.vis +75 -0
  437. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp/delta.hpp +64 -0
  438. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp/int.cpp +361 -0
  439. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp/int.hpp +1029 -0
  440. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var-imp/int.vis +117 -0
  441. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var/bool.cpp +53 -0
  442. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var/bool.hpp +121 -0
  443. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var/int.cpp +61 -0
  444. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var/int.hpp +145 -0
  445. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/var/print.hpp +56 -0
  446. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view-val-graph.hh +334 -0
  447. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view-val-graph/bi-link.hpp +89 -0
  448. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view-val-graph/comb-ptr-flag.hpp +78 -0
  449. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view-val-graph/edge.hpp +124 -0
  450. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view-val-graph/graph.hpp +202 -0
  451. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view-val-graph/iter-prune-val.hpp +70 -0
  452. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view-val-graph/node.hpp +171 -0
  453. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view.hpp +1690 -0
  454. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/bool-test.hpp +64 -0
  455. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/bool.hpp +314 -0
  456. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/cached.hpp +402 -0
  457. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/constint.hpp +324 -0
  458. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/int.hpp +264 -0
  459. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/iter.hpp +65 -0
  460. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/minus.hpp +300 -0
  461. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/neg-bool.hpp +177 -0
  462. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/offset.hpp +303 -0
  463. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/print.hpp +162 -0
  464. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/rel-test.hpp +231 -0
  465. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/scale.hpp +368 -0
  466. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/int/view/zero.hpp +305 -0
  467. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter.hh +96 -0
  468. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-add.hpp +144 -0
  469. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-append.hpp +222 -0
  470. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-array.hpp +139 -0
  471. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-cache.hpp +106 -0
  472. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-compl.hpp +220 -0
  473. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-diff.hpp +142 -0
  474. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-empty.hpp +111 -0
  475. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-inter.hpp +309 -0
  476. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-list.hpp +263 -0
  477. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-map.hpp +260 -0
  478. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-minmax.hpp +118 -0
  479. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-minus.hpp +107 -0
  480. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-negative.hpp +137 -0
  481. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-offset.hpp +127 -0
  482. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-operations.hpp +157 -0
  483. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-positive.hpp +139 -0
  484. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-rangelist.hpp +115 -0
  485. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-scale.hpp +238 -0
  486. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-singleton-append.hpp +111 -0
  487. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-singleton.hpp +86 -0
  488. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-size.hpp +146 -0
  489. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-union.hpp +361 -0
  490. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/ranges-values.hpp +140 -0
  491. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-array.hpp +120 -0
  492. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-bitset.hpp +114 -0
  493. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-inter.hpp +130 -0
  494. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-list.hpp +186 -0
  495. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-map.hpp +136 -0
  496. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-minus.hpp +105 -0
  497. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-negative.hpp +116 -0
  498. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-offset.hpp +113 -0
  499. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-positive.hpp +123 -0
  500. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-ranges.hpp +106 -0
  501. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-singleton.hpp +109 -0
  502. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-union.hpp +137 -0
  503. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/iter/values-unique.hpp +118 -0
  504. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel.hh +194 -0
  505. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/advisor.hpp +102 -0
  506. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/allocators.hpp +476 -0
  507. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/archive.cpp +70 -0
  508. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/archive.hpp +298 -0
  509. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/array.hpp +2133 -0
  510. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/branch.cpp +121 -0
  511. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/branch.hpp +254 -0
  512. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/brancher-tiebreak.hpp +615 -0
  513. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/brancher-val.hpp +126 -0
  514. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/brancher-view.hpp +455 -0
  515. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/brancher.hpp +431 -0
  516. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/core.cpp +563 -0
  517. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/core.hpp +3668 -0
  518. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/exception.hpp +124 -0
  519. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/global-prop-info.hpp +258 -0
  520. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/macros.hpp +118 -0
  521. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/memory-config.hpp +154 -0
  522. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/memory-manager.cpp +53 -0
  523. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/memory-manager.hpp +511 -0
  524. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/modevent.hpp +69 -0
  525. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/propagator.hpp +699 -0
  526. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/range-list.hpp +184 -0
  527. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/region.cpp +85 -0
  528. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/region.hpp +459 -0
  529. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/shared-array.hpp +345 -0
  530. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/var-imp.hpp +332 -0
  531. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/var-type.hpp +767 -0
  532. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/var.hpp +144 -0
  533. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/view.hpp +715 -0
  534. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/kernel/wait.hh +244 -0
  535. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel.hh +1870 -0
  536. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/arithmetic.cpp +408 -0
  537. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/bool-expr.cpp +522 -0
  538. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/bool-expr.hpp +87 -0
  539. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/exception.hpp +84 -0
  540. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/lin-expr.cpp +594 -0
  541. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/lin-expr.hpp +297 -0
  542. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/lin-rel.cpp +414 -0
  543. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/lin-rel.hpp +85 -0
  544. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/matrix.hpp +247 -0
  545. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/optimize.hpp +62 -0
  546. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/reg.cpp +817 -0
  547. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/reg.hpp +94 -0
  548. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/set-expr.cpp +704 -0
  549. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/set-expr.hpp +96 -0
  550. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/set-rel.cpp +81 -0
  551. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/minimodel/set-rel.hpp +84 -0
  552. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search.hh +458 -0
  553. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/bab.cpp +62 -0
  554. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/bab.hpp +91 -0
  555. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/dfs.cpp +62 -0
  556. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/dfs.hpp +84 -0
  557. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/options.cpp +72 -0
  558. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/options.hpp +49 -0
  559. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/bab.cpp +178 -0
  560. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/bab.hh +203 -0
  561. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/dfs.cpp +176 -0
  562. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/dfs.hh +195 -0
  563. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/engine.cpp +118 -0
  564. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/engine.hh +418 -0
  565. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/path.hh +477 -0
  566. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/restart.cpp +167 -0
  567. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/parallel/restart.hh +73 -0
  568. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/restart.cpp +62 -0
  569. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/restart.hpp +88 -0
  570. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/sequential/bab.hh +177 -0
  571. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/sequential/dfs.hh +176 -0
  572. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/sequential/path.hh +411 -0
  573. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/sequential/restart.hh +89 -0
  574. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/statistics.hpp +70 -0
  575. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/stop.cpp +83 -0
  576. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/stop.hpp +137 -0
  577. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/support.hh +91 -0
  578. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/search/worker.hh +202 -0
  579. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set.hh +1144 -0
  580. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/array-traits.hpp +86 -0
  581. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/array.cpp +219 -0
  582. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/array.hpp +64 -0
  583. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/branch.cpp +128 -0
  584. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/branch.hh +438 -0
  585. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/branch/post-val.hpp +107 -0
  586. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/branch/post-view.bs +109 -0
  587. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/branch/post-view.cpp +370 -0
  588. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/branch/select-val.hpp +204 -0
  589. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/branch/select-view.hpp +306 -0
  590. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/cardinality.cpp +65 -0
  591. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/convex.cpp +60 -0
  592. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/convex.hh +107 -0
  593. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/convex/conv.cpp +97 -0
  594. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/convex/conv.hpp +67 -0
  595. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/convex/hull.cpp +116 -0
  596. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/convex/hull.hpp +68 -0
  597. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/distinct.cpp +56 -0
  598. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/distinct.hh +79 -0
  599. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/distinct/atmostOne.cpp +162 -0
  600. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/distinct/atmostOne.hpp +66 -0
  601. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/dom.cpp +300 -0
  602. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/element.cpp +255 -0
  603. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/element.hh +218 -0
  604. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/element/disjoint.hpp +324 -0
  605. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/element/inter.hpp +308 -0
  606. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/element/union.hpp +342 -0
  607. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/element/unionConst.hpp +293 -0
  608. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/exception.hpp +146 -0
  609. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/exec.cpp +58 -0
  610. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int.cpp +191 -0
  611. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int.hh +459 -0
  612. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int/card.hpp +93 -0
  613. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int/channel-bool.hpp +282 -0
  614. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int/channel-int.hpp +158 -0
  615. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int/match.hpp +199 -0
  616. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int/minmax.hpp +645 -0
  617. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/int/weights.hpp +353 -0
  618. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/limits.hpp +62 -0
  619. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/precede.cpp +74 -0
  620. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/precede.hh +115 -0
  621. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/precede/single.hpp +255 -0
  622. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op-const-cvc.cpp +66 -0
  623. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op-const-cvv.cpp +65 -0
  624. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op-const-vcc.cpp +168 -0
  625. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op-const-vcv.cpp +166 -0
  626. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op-const-vvc.cpp +63 -0
  627. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op-singleton.cpp +115 -0
  628. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op-ternary.cpp +60 -0
  629. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op.cpp +105 -0
  630. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op.hh +297 -0
  631. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/common.hpp +619 -0
  632. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/inter.hpp +389 -0
  633. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/partition.hpp +164 -0
  634. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-compl-cvc.cpp +58 -0
  635. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-compl-cvv.cpp +54 -0
  636. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-compl-vvc.cpp +57 -0
  637. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-compl.cpp +54 -0
  638. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-nocompl-cvc.cpp +55 -0
  639. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-nocompl-cvv.cpp +54 -0
  640. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-nocompl-vvc.cpp +54 -0
  641. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post-nocompl.cpp +54 -0
  642. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/post.hpp +266 -0
  643. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/subofunion.hpp +166 -0
  644. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/superofinter.hpp +167 -0
  645. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel-op/union.hpp +319 -0
  646. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel.cpp +232 -0
  647. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel.hh +322 -0
  648. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/common.hpp +125 -0
  649. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/eq.hpp +116 -0
  650. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/lq.hpp +417 -0
  651. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/nosubset.hpp +104 -0
  652. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/nq.hpp +160 -0
  653. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/re-eq.hpp +152 -0
  654. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/re-lq.hpp +182 -0
  655. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/re-subset.hpp +146 -0
  656. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/rel/subset.hpp +96 -0
  657. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/sequence.cpp +64 -0
  658. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/sequence.hh +115 -0
  659. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/sequence/common.hpp +100 -0
  660. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/sequence/seq-u.cpp +145 -0
  661. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/sequence/seq-u.hpp +79 -0
  662. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/sequence/seq.cpp +76 -0
  663. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/sequence/seq.hpp +69 -0
  664. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp.hpp +634 -0
  665. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp/delta.hpp +78 -0
  666. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp/integerset.cpp +348 -0
  667. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp/integerset.hpp +426 -0
  668. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp/iter.hpp +63 -0
  669. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp/set.cpp +142 -0
  670. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp/set.hpp +531 -0
  671. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var-imp/set.vis +197 -0
  672. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var/print.hpp +49 -0
  673. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var/set.cpp +111 -0
  674. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/var/set.hpp +254 -0
  675. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/view.hpp +1142 -0
  676. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/view/cached.hpp +399 -0
  677. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/view/complement.hpp +556 -0
  678. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/view/const.hpp +723 -0
  679. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/view/print.hpp +140 -0
  680. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/view/set.hpp +263 -0
  681. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/set/view/singleton.hpp +402 -0
  682. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support.hh +135 -0
  683. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/auto-link.hpp +73 -0
  684. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/bitset-base.hpp +379 -0
  685. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/bitset.hpp +81 -0
  686. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/block-allocator.hpp +169 -0
  687. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/cast.hpp +52 -0
  688. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/config.hpp.in +109 -0
  689. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/dynamic-array.hpp +140 -0
  690. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/dynamic-queue.hpp +156 -0
  691. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/dynamic-stack.hpp +186 -0
  692. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/exception.cpp +65 -0
  693. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/exception.hpp +102 -0
  694. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/heap.cpp +49 -0
  695. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/heap.hpp +593 -0
  696. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/int-type.hpp +172 -0
  697. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/macros.hpp +103 -0
  698. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/marked-pointer.hpp +79 -0
  699. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/random.hpp +128 -0
  700. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/sort.hpp +268 -0
  701. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/static-stack.hpp +148 -0
  702. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread.hpp +272 -0
  703. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread/none.hpp +87 -0
  704. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread/pthreads.cpp +66 -0
  705. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread/pthreads.hpp +142 -0
  706. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread/thread.cpp +72 -0
  707. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread/thread.hpp +114 -0
  708. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread/windows.cpp +68 -0
  709. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/thread/windows.hpp +108 -0
  710. data/ext/libgecode3/vendor/gecode-3.7.3/gecode/support/timer.hpp +103 -0
  711. data/ext/libgecode3/vendor/gecode-3.7.3/install-sh +323 -0
  712. data/ext/libgecode3/vendor/gecode-3.7.3/misc/allexamples.perl +60 -0
  713. data/ext/libgecode3/vendor/gecode-3.7.3/misc/doxygen/back.png +0 -0
  714. data/ext/libgecode3/vendor/gecode-3.7.3/misc/doxygen/footer.html +3 -0
  715. data/ext/libgecode3/vendor/gecode-3.7.3/misc/doxygen/gecode-logo-100.png +0 -0
  716. data/ext/libgecode3/vendor/gecode-3.7.3/misc/doxygen/header.html +66 -0
  717. data/ext/libgecode3/vendor/gecode-3.7.3/misc/doxygen/stylesheet.css +468 -0
  718. data/ext/libgecode3/vendor/gecode-3.7.3/misc/fixautoheader.perl +55 -0
  719. data/ext/libgecode3/vendor/gecode-3.7.3/misc/fixmanifest.perl +84 -0
  720. data/ext/libgecode3/vendor/gecode-3.7.3/misc/fixproperties.sh +98 -0
  721. data/ext/libgecode3/vendor/gecode-3.7.3/misc/gecode-logo.ico +0 -0
  722. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genbranch.perl +310 -0
  723. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genchangelog.perl +249 -0
  724. data/ext/libgecode3/vendor/gecode-3.7.3/misc/gencurrentchangelog.perl +191 -0
  725. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genlcovmakefile.perl +148 -0
  726. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genlicense.perl +121 -0
  727. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genrc.perl +236 -0
  728. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genstatistics.perl +178 -0
  729. data/ext/libgecode3/vendor/gecode-3.7.3/misc/gentxtchangelog.perl +198 -0
  730. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genvarimp.perl +877 -0
  731. data/ext/libgecode3/vendor/gecode-3.7.3/misc/genxcodeproj.perl +144 -0
  732. data/ext/libgecode3/vendor/gecode-3.7.3/misc/getrevision.perl +47 -0
  733. data/ext/libgecode3/vendor/gecode-3.7.3/misc/makedepend.perl +85 -0
  734. data/ext/libgecode3/vendor/gecode-3.7.3/misc/svn-ignore-root.txt +43 -0
  735. data/ext/libgecode3/vendor/gecode-3.7.3/misc/svn-ignore.txt +18 -0
  736. data/ext/libgecode3/vendor/gecode-3.7.3/test/afc.cpp +143 -0
  737. data/ext/libgecode3/vendor/gecode-3.7.3/test/array.cpp +277 -0
  738. data/ext/libgecode3/vendor/gecode-3.7.3/test/assign.cpp +278 -0
  739. data/ext/libgecode3/vendor/gecode-3.7.3/test/assign.hh +119 -0
  740. data/ext/libgecode3/vendor/gecode-3.7.3/test/assign/bool.cpp +61 -0
  741. data/ext/libgecode3/vendor/gecode-3.7.3/test/assign/int.cpp +70 -0
  742. data/ext/libgecode3/vendor/gecode-3.7.3/test/assign/set.cpp +72 -0
  743. data/ext/libgecode3/vendor/gecode-3.7.3/test/branch.cpp +504 -0
  744. data/ext/libgecode3/vendor/gecode-3.7.3/test/branch.hh +119 -0
  745. data/ext/libgecode3/vendor/gecode-3.7.3/test/branch/bool.cpp +61 -0
  746. data/ext/libgecode3/vendor/gecode-3.7.3/test/branch/int.cpp +70 -0
  747. data/ext/libgecode3/vendor/gecode-3.7.3/test/branch/set.cpp +72 -0
  748. data/ext/libgecode3/vendor/gecode-3.7.3/test/int.cpp +655 -0
  749. data/ext/libgecode3/vendor/gecode-3.7.3/test/int.hh +353 -0
  750. data/ext/libgecode3/vendor/gecode-3.7.3/test/int.hpp +314 -0
  751. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/arithmetic.cpp +772 -0
  752. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/basic.cpp +82 -0
  753. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/bin-packing.cpp +237 -0
  754. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/bool.cpp +500 -0
  755. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/channel.cpp +234 -0
  756. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/circuit.cpp +359 -0
  757. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/count.cpp +410 -0
  758. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/cumulative.cpp +560 -0
  759. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/cumulatives.cpp +276 -0
  760. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/distinct.cpp +248 -0
  761. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/dom.cpp +174 -0
  762. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/element.cpp +602 -0
  763. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/exec.cpp +150 -0
  764. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/extensional.cpp +571 -0
  765. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/gcc.cpp +320 -0
  766. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/linear.cpp +394 -0
  767. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/member.cpp +138 -0
  768. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/mm-arithmetic.cpp +368 -0
  769. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/mm-bool.cpp +4344 -0
  770. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/mm-count.cpp +295 -0
  771. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/mm-lin.cpp +2179 -0
  772. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/mm-rel.cpp +136 -0
  773. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/no-overlap.cpp +259 -0
  774. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/nvalues.cpp +241 -0
  775. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/precede.cpp +115 -0
  776. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/rel.cpp +568 -0
  777. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/sequence.cpp +168 -0
  778. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/sorted.cpp +165 -0
  779. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/unary.cpp +327 -0
  780. data/ext/libgecode3/vendor/gecode-3.7.3/test/int/unshare.cpp +109 -0
  781. data/ext/libgecode3/vendor/gecode-3.7.3/test/search.cpp +487 -0
  782. data/ext/libgecode3/vendor/gecode-3.7.3/test/set.cpp +638 -0
  783. data/ext/libgecode3/vendor/gecode-3.7.3/test/set.hh +362 -0
  784. data/ext/libgecode3/vendor/gecode-3.7.3/test/set.hpp +121 -0
  785. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/construct.cpp +225 -0
  786. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/convex.cpp +139 -0
  787. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/distinct.cpp +116 -0
  788. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/dom.cpp +346 -0
  789. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/element.cpp +397 -0
  790. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/exec.cpp +86 -0
  791. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/int.cpp +532 -0
  792. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/mm-set.cpp +4532 -0
  793. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/precede.cpp +136 -0
  794. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/rel-op-const.cpp +368 -0
  795. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/rel-op.cpp +504 -0
  796. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/rel.cpp +157 -0
  797. data/ext/libgecode3/vendor/gecode-3.7.3/test/set/sequence.cpp +133 -0
  798. data/ext/libgecode3/vendor/gecode-3.7.3/test/test.cpp +281 -0
  799. data/ext/libgecode3/vendor/gecode-3.7.3/test/test.hh +161 -0
  800. data/ext/libgecode3/vendor/gecode-3.7.3/test/test.hpp +76 -0
  801. data/ext/libgecode3/vendor/gecode-3.7.3/tools/flatzinc/fz.cpp +93 -0
  802. data/ext/libgecode3/vendor/gecode-3.7.3/tools/flatzinc/mzn-gecode.bat.in +41 -0
  803. data/ext/libgecode3/vendor/gecode-3.7.3/tools/flatzinc/mzn-gecode.in +41 -0
  804. data/lib/dep-selector-libgecode.rb +15 -0
  805. data/lib/dep-selector-libgecode/version.rb +3 -0
  806. metadata +878 -0
@@ -0,0 +1,4344 @@
1
+ /* -*- mode: C++; c-basic-offset: 2; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Main authors:
4
+ * Christian Schulte <schulte@gecode.org>
5
+ *
6
+ * Copyright:
7
+ * Christian Schulte, 2008
8
+ *
9
+ * Last modified:
10
+ * $Date: 2010-05-08 21:09:21 +1000 (Sat, 08 May 2010) $ by $Author: tack $
11
+ * $Revision: 10907 $
12
+ *
13
+ * This file is part of Gecode, the generic constraint
14
+ * development environment:
15
+ * http://www.gecode.org
16
+ *
17
+ * Permission is hereby granted, free of charge, to any person obtaining
18
+ * a copy of this software and associated documentation files (the
19
+ * "Software"), to deal in the Software without restriction, including
20
+ * without limitation the rights to use, copy, modify, merge, publish,
21
+ * distribute, sublicense, and/or sell copies of the Software, and to
22
+ * permit persons to whom the Software is furnished to do so, subject to
23
+ * the following conditions:
24
+ *
25
+ * The above copyright notice and this permission notice shall be
26
+ * included in all copies or substantial portions of the Software.
27
+ *
28
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
29
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
30
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
31
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
32
+ * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
33
+ * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
34
+ * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35
+ *
36
+ */
37
+
38
+ #include "test/int.hh"
39
+
40
+ #include <gecode/minimodel.hh>
41
+
42
+ namespace Test { namespace Int {
43
+
44
+ /// %Tests for minimal modelling constraints (Boolean)
45
+ namespace MiniModelBoolean {
46
+
47
+ /// Boolean opcode
48
+ enum BoolOpcode {
49
+ BO_NOT, ///< Negation
50
+ BO_AND, ///< Conjunction
51
+ BO_OR, ///< Disjunction
52
+ BO_IMP, ///< Implication
53
+ BO_XOR, ///< Exclusive or
54
+ BO_EQV, ///< Equivalence
55
+ BO_HLT ///< Stop execution
56
+ };
57
+
58
+ /// Type for representing a Boolean instruction
59
+ class BoolInstr {
60
+ public:
61
+ BoolOpcode o; ///< Which instruction to execute
62
+ unsigned char x, y, z; ///< Instruction arguments, \a z is destination (or \a y for negation)
63
+ };
64
+
65
+ /// Executes Boolean instruction for evaluation (checking)
66
+ int
67
+ eval(const BoolInstr* pc, int reg[]) {
68
+ while (true) {
69
+ switch (pc->o) {
70
+ case BO_NOT: reg[pc->y] = !reg[pc->x]; break;
71
+ case BO_AND: reg[pc->z] = reg[pc->x] & reg[pc->y]; break;
72
+ case BO_OR: reg[pc->z] = reg[pc->x] | reg[pc->y]; break;
73
+ case BO_IMP: reg[pc->z] = !reg[pc->x] | reg[pc->y]; break;
74
+ case BO_XOR: reg[pc->z] = reg[pc->x] ^ reg[pc->y]; break;
75
+ case BO_EQV: reg[pc->z] = reg[pc->x] == reg[pc->y]; break;
76
+ case BO_HLT: return reg[pc->x];
77
+ default: GECODE_NEVER;
78
+ }
79
+ pc++;
80
+ }
81
+ GECODE_NEVER;
82
+ }
83
+
84
+ /// Executes Boolean instruction for constructing Boolean expressions
85
+ Gecode::BoolExpr
86
+ eval(const BoolInstr* pc, Gecode::BoolExpr reg[]) {
87
+ using namespace Gecode;
88
+ while (true) {
89
+ switch (pc->o) {
90
+ case BO_NOT: reg[pc->y] = !reg[pc->x]; break;
91
+ case BO_AND: reg[pc->z] = reg[pc->x] && reg[pc->y]; break;
92
+ case BO_OR: reg[pc->z] = reg[pc->x] || reg[pc->y]; break;
93
+ case BO_IMP: reg[pc->z] = (reg[pc->x] >> reg[pc->y]); break;
94
+ case BO_XOR: reg[pc->z] = reg[pc->x] ^ reg[pc->y]; break;
95
+ case BO_EQV: reg[pc->z] = (reg[pc->x] == reg[pc->y]); break;
96
+ case BO_HLT: return reg[pc->x];
97
+ default: GECODE_NEVER;
98
+ }
99
+ pc++;
100
+ }
101
+ GECODE_NEVER;
102
+ }
103
+
104
+ /**
105
+ * \defgroup TaskTestIntMiniModelBool Minimal modelling constraints (Boolean constraints)
106
+ * \ingroup TaskTestInt
107
+ */
108
+ //@{
109
+ /// %Test Boolean expressions with integer result
110
+ class BoolExprInt : public Test {
111
+ protected:
112
+ /// Boolean instruction sequence
113
+ const BoolInstr* bis;
114
+ /// Result of expression
115
+ int c;
116
+ public:
117
+ /// Create and register test
118
+ BoolExprInt(const BoolInstr* bis0, const std::string& s, int c0)
119
+ : Test("MiniModel::BoolExpr::Int::"+s+"::"+str(c0),4,0,1),
120
+ bis(bis0), c(c0) {}
121
+ /// %Test whether \a x is solution
122
+ virtual bool solution(const Assignment& x) const {
123
+ int reg[4] = {(x[0] != x[2]), x[1],
124
+ (x[2] > 0), x[3]};
125
+ return eval(bis, reg) == c;
126
+ }
127
+ /// Post constraint on \a x
128
+ virtual void post(Gecode::Space& home, Gecode::IntVarArray& x) {
129
+ using namespace Gecode;
130
+ Gecode::BoolExpr reg[4] = {
131
+ (x[0] != x[2]),channel(home,x[1]),
132
+ (x[2] > 0),channel(home,x[3])
133
+ };
134
+ if (c == 0)
135
+ Gecode::rel(home, !(eval(bis,reg)));
136
+ else
137
+ Gecode::rel(home, eval(bis,reg));
138
+ }
139
+ };
140
+
141
+ /// %Test posting Boolean expressions
142
+ class BoolExprVar : public Test {
143
+ protected:
144
+ /// Boolean instruction sequence
145
+ const BoolInstr* bis;
146
+ public:
147
+ /// Create and register test
148
+ BoolExprVar(const BoolInstr* bis0, const std::string& s)
149
+ : Test("MiniModel::BoolExpr::Var::"+s,5,0,1), bis(bis0) {}
150
+ /// %Test whether \a x is solution
151
+ virtual bool solution(const Assignment& x) const {
152
+ int reg[4] = {(x[0] > x[2]), x[1],
153
+ (x[2] != 1), x[3]};
154
+ return eval(bis, reg) == x[4];
155
+ }
156
+ /// Post constraint on \a x
157
+ virtual void post(Gecode::Space& home, Gecode::IntVarArray& x) {
158
+ using namespace Gecode;
159
+ Gecode::BoolExpr reg[4] = {
160
+ (x[0] > x[2]),channel(home,x[1]),
161
+ (channel(home,x[2]) != 1),channel(home,x[3])
162
+ };
163
+ rel(home, Gecode::expr(home, eval(bis,reg)), IRT_EQ,
164
+ channel(home,x[4]));
165
+ }
166
+ };
167
+
168
+ const BoolInstr bi000[] = {
169
+ {BO_AND,0,1,0},{BO_AND,2,3,1},{BO_AND,0,1,0},
170
+ {BO_HLT,0,0,0}
171
+ };
172
+ const BoolInstr bi001[] = {
173
+ {BO_AND,0,1,0},{BO_AND,0,2,0},{BO_AND,0,3,0},
174
+ {BO_HLT,0,0,0}
175
+ };
176
+ const BoolInstr bi002[] = {
177
+ {BO_AND,2,3,2},{BO_AND,1,2,1},{BO_AND,0,1,0},
178
+ {BO_HLT,0,0,0}
179
+ };
180
+ const BoolInstr bi003[] = {
181
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_AND,2,3,1},
182
+ {BO_AND,0,1,0},
183
+ {BO_HLT,0,0,0}
184
+ };
185
+ const BoolInstr bi004[] = {
186
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
187
+ {BO_AND,2,3,1},{BO_AND,0,1,0},
188
+ {BO_HLT,0,0,0}
189
+ };
190
+ const BoolInstr bi005[] = {
191
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
192
+ {BO_AND,0,1,0},
193
+ {BO_HLT,0,0,0}
194
+ };
195
+ const BoolInstr bi006[] = {
196
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
197
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
198
+ {BO_HLT,0,0,0}
199
+ };
200
+ const BoolInstr bi007[] = {
201
+ {BO_AND,0,1,0},{BO_AND,2,3,1},{BO_OR ,0,1,0},
202
+ {BO_HLT,0,0,0}
203
+ };
204
+ const BoolInstr bi008[] = {
205
+ {BO_AND,0,1,0},{BO_AND,0,2,0},{BO_OR ,0,3,0},
206
+ {BO_HLT,0,0,0}
207
+ };
208
+ const BoolInstr bi009[] = {
209
+ {BO_AND,2,3,2},{BO_AND,1,2,1},{BO_OR ,0,1,0},
210
+ {BO_HLT,0,0,0}
211
+ };
212
+ const BoolInstr bi010[] = {
213
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_AND,2,3,1},
214
+ {BO_OR ,0,1,0},
215
+ {BO_HLT,0,0,0}
216
+ };
217
+ const BoolInstr bi011[] = {
218
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
219
+ {BO_AND,2,3,1},{BO_OR ,0,1,0},
220
+ {BO_HLT,0,0,0}
221
+ };
222
+ const BoolInstr bi012[] = {
223
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
224
+ {BO_OR ,0,1,0},
225
+ {BO_HLT,0,0,0}
226
+ };
227
+ const BoolInstr bi013[] = {
228
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
229
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
230
+ {BO_HLT,0,0,0}
231
+ };
232
+ const BoolInstr bi014[] = {
233
+ {BO_AND,0,1,0},{BO_AND,2,3,1},{BO_IMP,0,1,0},
234
+ {BO_HLT,0,0,0}
235
+ };
236
+ const BoolInstr bi015[] = {
237
+ {BO_AND,0,1,0},{BO_AND,0,2,0},{BO_IMP,0,3,0},
238
+ {BO_HLT,0,0,0}
239
+ };
240
+ const BoolInstr bi016[] = {
241
+ {BO_AND,2,3,2},{BO_AND,1,2,1},{BO_IMP,0,1,0},
242
+ {BO_HLT,0,0,0}
243
+ };
244
+ const BoolInstr bi017[] = {
245
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_AND,2,3,1},
246
+ {BO_IMP,0,1,0},
247
+ {BO_HLT,0,0,0}
248
+ };
249
+ const BoolInstr bi018[] = {
250
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
251
+ {BO_AND,2,3,1},{BO_IMP,0,1,0},
252
+ {BO_HLT,0,0,0}
253
+ };
254
+ const BoolInstr bi019[] = {
255
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
256
+ {BO_IMP,0,1,0},
257
+ {BO_HLT,0,0,0}
258
+ };
259
+ const BoolInstr bi020[] = {
260
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
261
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
262
+ {BO_HLT,0,0,0}
263
+ };
264
+ const BoolInstr bi021[] = {
265
+ {BO_AND,0,1,0},{BO_AND,2,3,1},{BO_XOR,0,1,0},
266
+ {BO_HLT,0,0,0}
267
+ };
268
+ const BoolInstr bi022[] = {
269
+ {BO_AND,0,1,0},{BO_AND,0,2,0},{BO_XOR,0,3,0},
270
+ {BO_HLT,0,0,0}
271
+ };
272
+ const BoolInstr bi023[] = {
273
+ {BO_AND,2,3,2},{BO_AND,1,2,1},{BO_XOR,0,1,0},
274
+ {BO_HLT,0,0,0}
275
+ };
276
+ const BoolInstr bi024[] = {
277
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_AND,2,3,1},
278
+ {BO_XOR,0,1,0},
279
+ {BO_HLT,0,0,0}
280
+ };
281
+ const BoolInstr bi025[] = {
282
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
283
+ {BO_AND,2,3,1},{BO_XOR,0,1,0},
284
+ {BO_HLT,0,0,0}
285
+ };
286
+ const BoolInstr bi026[] = {
287
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
288
+ {BO_XOR,0,1,0},
289
+ {BO_HLT,0,0,0}
290
+ };
291
+ const BoolInstr bi027[] = {
292
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
293
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
294
+ {BO_HLT,0,0,0}
295
+ };
296
+ const BoolInstr bi028[] = {
297
+ {BO_AND,0,1,0},{BO_AND,2,3,1},{BO_EQV,0,1,0},
298
+ {BO_HLT,0,0,0}
299
+ };
300
+ const BoolInstr bi029[] = {
301
+ {BO_AND,0,1,0},{BO_AND,0,2,0},{BO_EQV,0,3,0},
302
+ {BO_HLT,0,0,0}
303
+ };
304
+ const BoolInstr bi030[] = {
305
+ {BO_AND,2,3,2},{BO_AND,1,2,1},{BO_EQV,0,1,0},
306
+ {BO_HLT,0,0,0}
307
+ };
308
+ const BoolInstr bi031[] = {
309
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_AND,2,3,1},
310
+ {BO_EQV,0,1,0},
311
+ {BO_HLT,0,0,0}
312
+ };
313
+ const BoolInstr bi032[] = {
314
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
315
+ {BO_AND,2,3,1},{BO_EQV,0,1,0},
316
+ {BO_HLT,0,0,0}
317
+ };
318
+ const BoolInstr bi033[] = {
319
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
320
+ {BO_EQV,0,1,0},
321
+ {BO_HLT,0,0,0}
322
+ };
323
+ const BoolInstr bi034[] = {
324
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
325
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
326
+ {BO_HLT,0,0,0}
327
+ };
328
+ const BoolInstr bi035[] = {
329
+ {BO_AND,0,1,0},{BO_OR ,2,3,1},{BO_AND,0,1,0},
330
+ {BO_HLT,0,0,0}
331
+ };
332
+ const BoolInstr bi036[] = {
333
+ {BO_AND,0,1,0},{BO_OR ,0,2,0},{BO_AND,0,3,0},
334
+ {BO_HLT,0,0,0}
335
+ };
336
+ const BoolInstr bi037[] = {
337
+ {BO_AND,2,3,2},{BO_OR ,1,2,1},{BO_AND,0,1,0},
338
+ {BO_HLT,0,0,0}
339
+ };
340
+ const BoolInstr bi038[] = {
341
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_OR ,2,3,1},
342
+ {BO_AND,0,1,0},
343
+ {BO_HLT,0,0,0}
344
+ };
345
+ const BoolInstr bi039[] = {
346
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
347
+ {BO_OR ,2,3,1},{BO_AND,0,1,0},
348
+ {BO_HLT,0,0,0}
349
+ };
350
+ const BoolInstr bi040[] = {
351
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
352
+ {BO_AND,0,1,0},
353
+ {BO_HLT,0,0,0}
354
+ };
355
+ const BoolInstr bi041[] = {
356
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
357
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
358
+ {BO_HLT,0,0,0}
359
+ };
360
+ const BoolInstr bi042[] = {
361
+ {BO_AND,0,1,0},{BO_OR ,2,3,1},{BO_OR ,0,1,0},
362
+ {BO_HLT,0,0,0}
363
+ };
364
+ const BoolInstr bi043[] = {
365
+ {BO_AND,0,1,0},{BO_OR ,0,2,0},{BO_OR ,0,3,0},
366
+ {BO_HLT,0,0,0}
367
+ };
368
+ const BoolInstr bi044[] = {
369
+ {BO_AND,2,3,2},{BO_OR ,1,2,1},{BO_OR ,0,1,0},
370
+ {BO_HLT,0,0,0}
371
+ };
372
+ const BoolInstr bi045[] = {
373
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_OR ,2,3,1},
374
+ {BO_OR ,0,1,0},
375
+ {BO_HLT,0,0,0}
376
+ };
377
+ const BoolInstr bi046[] = {
378
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
379
+ {BO_OR ,2,3,1},{BO_OR ,0,1,0},
380
+ {BO_HLT,0,0,0}
381
+ };
382
+ const BoolInstr bi047[] = {
383
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
384
+ {BO_OR ,0,1,0},
385
+ {BO_HLT,0,0,0}
386
+ };
387
+ const BoolInstr bi048[] = {
388
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
389
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
390
+ {BO_HLT,0,0,0}
391
+ };
392
+ const BoolInstr bi049[] = {
393
+ {BO_AND,0,1,0},{BO_OR ,2,3,1},{BO_IMP,0,1,0},
394
+ {BO_HLT,0,0,0}
395
+ };
396
+ const BoolInstr bi050[] = {
397
+ {BO_AND,0,1,0},{BO_OR ,0,2,0},{BO_IMP,0,3,0},
398
+ {BO_HLT,0,0,0}
399
+ };
400
+ const BoolInstr bi051[] = {
401
+ {BO_AND,2,3,2},{BO_OR ,1,2,1},{BO_IMP,0,1,0},
402
+ {BO_HLT,0,0,0}
403
+ };
404
+ const BoolInstr bi052[] = {
405
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_OR ,2,3,1},
406
+ {BO_IMP,0,1,0},
407
+ {BO_HLT,0,0,0}
408
+ };
409
+ const BoolInstr bi053[] = {
410
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
411
+ {BO_OR ,2,3,1},{BO_IMP,0,1,0},
412
+ {BO_HLT,0,0,0}
413
+ };
414
+ const BoolInstr bi054[] = {
415
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
416
+ {BO_IMP,0,1,0},
417
+ {BO_HLT,0,0,0}
418
+ };
419
+ const BoolInstr bi055[] = {
420
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
421
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
422
+ {BO_HLT,0,0,0}
423
+ };
424
+ const BoolInstr bi056[] = {
425
+ {BO_AND,0,1,0},{BO_OR ,2,3,1},{BO_XOR,0,1,0},
426
+ {BO_HLT,0,0,0}
427
+ };
428
+ const BoolInstr bi057[] = {
429
+ {BO_AND,0,1,0},{BO_OR ,0,2,0},{BO_XOR,0,3,0},
430
+ {BO_HLT,0,0,0}
431
+ };
432
+ const BoolInstr bi058[] = {
433
+ {BO_AND,2,3,2},{BO_OR ,1,2,1},{BO_XOR,0,1,0},
434
+ {BO_HLT,0,0,0}
435
+ };
436
+ const BoolInstr bi059[] = {
437
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_OR ,2,3,1},
438
+ {BO_XOR,0,1,0},
439
+ {BO_HLT,0,0,0}
440
+ };
441
+ const BoolInstr bi060[] = {
442
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
443
+ {BO_OR ,2,3,1},{BO_XOR,0,1,0},
444
+ {BO_HLT,0,0,0}
445
+ };
446
+ const BoolInstr bi061[] = {
447
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
448
+ {BO_XOR,0,1,0},
449
+ {BO_HLT,0,0,0}
450
+ };
451
+ const BoolInstr bi062[] = {
452
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
453
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
454
+ {BO_HLT,0,0,0}
455
+ };
456
+ const BoolInstr bi063[] = {
457
+ {BO_AND,0,1,0},{BO_OR ,2,3,1},{BO_EQV,0,1,0},
458
+ {BO_HLT,0,0,0}
459
+ };
460
+ const BoolInstr bi064[] = {
461
+ {BO_AND,0,1,0},{BO_OR ,0,2,0},{BO_EQV,0,3,0},
462
+ {BO_HLT,0,0,0}
463
+ };
464
+ const BoolInstr bi065[] = {
465
+ {BO_AND,2,3,2},{BO_OR ,1,2,1},{BO_EQV,0,1,0},
466
+ {BO_HLT,0,0,0}
467
+ };
468
+ const BoolInstr bi066[] = {
469
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_OR ,2,3,1},
470
+ {BO_EQV,0,1,0},
471
+ {BO_HLT,0,0,0}
472
+ };
473
+ const BoolInstr bi067[] = {
474
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
475
+ {BO_OR ,2,3,1},{BO_EQV,0,1,0},
476
+ {BO_HLT,0,0,0}
477
+ };
478
+ const BoolInstr bi068[] = {
479
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
480
+ {BO_EQV,0,1,0},
481
+ {BO_HLT,0,0,0}
482
+ };
483
+ const BoolInstr bi069[] = {
484
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
485
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
486
+ {BO_HLT,0,0,0}
487
+ };
488
+ const BoolInstr bi070[] = {
489
+ {BO_AND,0,1,0},{BO_IMP,2,3,1},{BO_AND,0,1,0},
490
+ {BO_HLT,0,0,0}
491
+ };
492
+ const BoolInstr bi071[] = {
493
+ {BO_AND,0,1,0},{BO_IMP,0,2,0},{BO_AND,0,3,0},
494
+ {BO_HLT,0,0,0}
495
+ };
496
+ const BoolInstr bi072[] = {
497
+ {BO_AND,2,3,2},{BO_IMP,1,2,1},{BO_AND,0,1,0},
498
+ {BO_HLT,0,0,0}
499
+ };
500
+ const BoolInstr bi073[] = {
501
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_IMP,2,3,1},
502
+ {BO_AND,0,1,0},
503
+ {BO_HLT,0,0,0}
504
+ };
505
+ const BoolInstr bi074[] = {
506
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
507
+ {BO_IMP,2,3,1},{BO_AND,0,1,0},
508
+ {BO_HLT,0,0,0}
509
+ };
510
+ const BoolInstr bi075[] = {
511
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
512
+ {BO_AND,0,1,0},
513
+ {BO_HLT,0,0,0}
514
+ };
515
+ const BoolInstr bi076[] = {
516
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
517
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
518
+ {BO_HLT,0,0,0}
519
+ };
520
+ const BoolInstr bi077[] = {
521
+ {BO_AND,0,1,0},{BO_IMP,2,3,1},{BO_OR ,0,1,0},
522
+ {BO_HLT,0,0,0}
523
+ };
524
+ const BoolInstr bi078[] = {
525
+ {BO_AND,0,1,0},{BO_IMP,0,2,0},{BO_OR ,0,3,0},
526
+ {BO_HLT,0,0,0}
527
+ };
528
+ const BoolInstr bi079[] = {
529
+ {BO_AND,2,3,2},{BO_IMP,1,2,1},{BO_OR ,0,1,0},
530
+ {BO_HLT,0,0,0}
531
+ };
532
+ const BoolInstr bi080[] = {
533
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_IMP,2,3,1},
534
+ {BO_OR ,0,1,0},
535
+ {BO_HLT,0,0,0}
536
+ };
537
+ const BoolInstr bi081[] = {
538
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
539
+ {BO_IMP,2,3,1},{BO_OR ,0,1,0},
540
+ {BO_HLT,0,0,0}
541
+ };
542
+ const BoolInstr bi082[] = {
543
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
544
+ {BO_OR ,0,1,0},
545
+ {BO_HLT,0,0,0}
546
+ };
547
+ const BoolInstr bi083[] = {
548
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
549
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
550
+ {BO_HLT,0,0,0}
551
+ };
552
+ const BoolInstr bi084[] = {
553
+ {BO_AND,0,1,0},{BO_IMP,2,3,1},{BO_IMP,0,1,0},
554
+ {BO_HLT,0,0,0}
555
+ };
556
+ const BoolInstr bi085[] = {
557
+ {BO_AND,0,1,0},{BO_IMP,0,2,0},{BO_IMP,0,3,0},
558
+ {BO_HLT,0,0,0}
559
+ };
560
+ const BoolInstr bi086[] = {
561
+ {BO_AND,2,3,2},{BO_IMP,1,2,1},{BO_IMP,0,1,0},
562
+ {BO_HLT,0,0,0}
563
+ };
564
+ const BoolInstr bi087[] = {
565
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_IMP,2,3,1},
566
+ {BO_IMP,0,1,0},
567
+ {BO_HLT,0,0,0}
568
+ };
569
+ const BoolInstr bi088[] = {
570
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
571
+ {BO_IMP,2,3,1},{BO_IMP,0,1,0},
572
+ {BO_HLT,0,0,0}
573
+ };
574
+ const BoolInstr bi089[] = {
575
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
576
+ {BO_IMP,0,1,0},
577
+ {BO_HLT,0,0,0}
578
+ };
579
+ const BoolInstr bi090[] = {
580
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
581
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
582
+ {BO_HLT,0,0,0}
583
+ };
584
+ const BoolInstr bi091[] = {
585
+ {BO_AND,0,1,0},{BO_IMP,2,3,1},{BO_XOR,0,1,0},
586
+ {BO_HLT,0,0,0}
587
+ };
588
+ const BoolInstr bi092[] = {
589
+ {BO_AND,0,1,0},{BO_IMP,0,2,0},{BO_XOR,0,3,0},
590
+ {BO_HLT,0,0,0}
591
+ };
592
+ const BoolInstr bi093[] = {
593
+ {BO_AND,2,3,2},{BO_IMP,1,2,1},{BO_XOR,0,1,0},
594
+ {BO_HLT,0,0,0}
595
+ };
596
+ const BoolInstr bi094[] = {
597
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_IMP,2,3,1},
598
+ {BO_XOR,0,1,0},
599
+ {BO_HLT,0,0,0}
600
+ };
601
+ const BoolInstr bi095[] = {
602
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
603
+ {BO_IMP,2,3,1},{BO_XOR,0,1,0},
604
+ {BO_HLT,0,0,0}
605
+ };
606
+ const BoolInstr bi096[] = {
607
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
608
+ {BO_XOR,0,1,0},
609
+ {BO_HLT,0,0,0}
610
+ };
611
+ const BoolInstr bi097[] = {
612
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
613
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
614
+ {BO_HLT,0,0,0}
615
+ };
616
+ const BoolInstr bi098[] = {
617
+ {BO_AND,0,1,0},{BO_IMP,2,3,1},{BO_EQV,0,1,0},
618
+ {BO_HLT,0,0,0}
619
+ };
620
+ const BoolInstr bi099[] = {
621
+ {BO_AND,0,1,0},{BO_IMP,0,2,0},{BO_EQV,0,3,0},
622
+ {BO_HLT,0,0,0}
623
+ };
624
+ const BoolInstr bi100[] = {
625
+ {BO_AND,2,3,2},{BO_IMP,1,2,1},{BO_EQV,0,1,0},
626
+ {BO_HLT,0,0,0}
627
+ };
628
+ const BoolInstr bi101[] = {
629
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_IMP,2,3,1},
630
+ {BO_EQV,0,1,0},
631
+ {BO_HLT,0,0,0}
632
+ };
633
+ const BoolInstr bi102[] = {
634
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
635
+ {BO_IMP,2,3,1},{BO_EQV,0,1,0},
636
+ {BO_HLT,0,0,0}
637
+ };
638
+ const BoolInstr bi103[] = {
639
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
640
+ {BO_EQV,0,1,0},
641
+ {BO_HLT,0,0,0}
642
+ };
643
+ const BoolInstr bi104[] = {
644
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
645
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
646
+ {BO_HLT,0,0,0}
647
+ };
648
+ const BoolInstr bi105[] = {
649
+ {BO_AND,0,1,0},{BO_XOR,2,3,1},{BO_AND,0,1,0},
650
+ {BO_HLT,0,0,0}
651
+ };
652
+ const BoolInstr bi106[] = {
653
+ {BO_AND,0,1,0},{BO_XOR,0,2,0},{BO_AND,0,3,0},
654
+ {BO_HLT,0,0,0}
655
+ };
656
+ const BoolInstr bi107[] = {
657
+ {BO_AND,2,3,2},{BO_XOR,1,2,1},{BO_AND,0,1,0},
658
+ {BO_HLT,0,0,0}
659
+ };
660
+ const BoolInstr bi108[] = {
661
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_XOR,2,3,1},
662
+ {BO_AND,0,1,0},
663
+ {BO_HLT,0,0,0}
664
+ };
665
+ const BoolInstr bi109[] = {
666
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
667
+ {BO_XOR,2,3,1},{BO_AND,0,1,0},
668
+ {BO_HLT,0,0,0}
669
+ };
670
+ const BoolInstr bi110[] = {
671
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
672
+ {BO_AND,0,1,0},
673
+ {BO_HLT,0,0,0}
674
+ };
675
+ const BoolInstr bi111[] = {
676
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
677
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
678
+ {BO_HLT,0,0,0}
679
+ };
680
+ const BoolInstr bi112[] = {
681
+ {BO_AND,0,1,0},{BO_XOR,2,3,1},{BO_OR ,0,1,0},
682
+ {BO_HLT,0,0,0}
683
+ };
684
+ const BoolInstr bi113[] = {
685
+ {BO_AND,0,1,0},{BO_XOR,0,2,0},{BO_OR ,0,3,0},
686
+ {BO_HLT,0,0,0}
687
+ };
688
+ const BoolInstr bi114[] = {
689
+ {BO_AND,2,3,2},{BO_XOR,1,2,1},{BO_OR ,0,1,0},
690
+ {BO_HLT,0,0,0}
691
+ };
692
+ const BoolInstr bi115[] = {
693
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_XOR,2,3,1},
694
+ {BO_OR ,0,1,0},
695
+ {BO_HLT,0,0,0}
696
+ };
697
+ const BoolInstr bi116[] = {
698
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
699
+ {BO_XOR,2,3,1},{BO_OR ,0,1,0},
700
+ {BO_HLT,0,0,0}
701
+ };
702
+ const BoolInstr bi117[] = {
703
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
704
+ {BO_OR ,0,1,0},
705
+ {BO_HLT,0,0,0}
706
+ };
707
+ const BoolInstr bi118[] = {
708
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
709
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
710
+ {BO_HLT,0,0,0}
711
+ };
712
+ const BoolInstr bi119[] = {
713
+ {BO_AND,0,1,0},{BO_XOR,2,3,1},{BO_IMP,0,1,0},
714
+ {BO_HLT,0,0,0}
715
+ };
716
+ const BoolInstr bi120[] = {
717
+ {BO_AND,0,1,0},{BO_XOR,0,2,0},{BO_IMP,0,3,0},
718
+ {BO_HLT,0,0,0}
719
+ };
720
+ const BoolInstr bi121[] = {
721
+ {BO_AND,2,3,2},{BO_XOR,1,2,1},{BO_IMP,0,1,0},
722
+ {BO_HLT,0,0,0}
723
+ };
724
+ const BoolInstr bi122[] = {
725
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_XOR,2,3,1},
726
+ {BO_IMP,0,1,0},
727
+ {BO_HLT,0,0,0}
728
+ };
729
+ const BoolInstr bi123[] = {
730
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
731
+ {BO_XOR,2,3,1},{BO_IMP,0,1,0},
732
+ {BO_HLT,0,0,0}
733
+ };
734
+ const BoolInstr bi124[] = {
735
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
736
+ {BO_IMP,0,1,0},
737
+ {BO_HLT,0,0,0}
738
+ };
739
+ const BoolInstr bi125[] = {
740
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
741
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
742
+ {BO_HLT,0,0,0}
743
+ };
744
+ const BoolInstr bi126[] = {
745
+ {BO_AND,0,1,0},{BO_XOR,2,3,1},{BO_XOR,0,1,0},
746
+ {BO_HLT,0,0,0}
747
+ };
748
+ const BoolInstr bi127[] = {
749
+ {BO_AND,0,1,0},{BO_XOR,0,2,0},{BO_XOR,0,3,0},
750
+ {BO_HLT,0,0,0}
751
+ };
752
+ const BoolInstr bi128[] = {
753
+ {BO_AND,2,3,2},{BO_XOR,1,2,1},{BO_XOR,0,1,0},
754
+ {BO_HLT,0,0,0}
755
+ };
756
+ const BoolInstr bi129[] = {
757
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_XOR,2,3,1},
758
+ {BO_XOR,0,1,0},
759
+ {BO_HLT,0,0,0}
760
+ };
761
+ const BoolInstr bi130[] = {
762
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
763
+ {BO_XOR,2,3,1},{BO_XOR,0,1,0},
764
+ {BO_HLT,0,0,0}
765
+ };
766
+ const BoolInstr bi131[] = {
767
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
768
+ {BO_XOR,0,1,0},
769
+ {BO_HLT,0,0,0}
770
+ };
771
+ const BoolInstr bi132[] = {
772
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
773
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
774
+ {BO_HLT,0,0,0}
775
+ };
776
+ const BoolInstr bi133[] = {
777
+ {BO_AND,0,1,0},{BO_XOR,2,3,1},{BO_EQV,0,1,0},
778
+ {BO_HLT,0,0,0}
779
+ };
780
+ const BoolInstr bi134[] = {
781
+ {BO_AND,0,1,0},{BO_XOR,0,2,0},{BO_EQV,0,3,0},
782
+ {BO_HLT,0,0,0}
783
+ };
784
+ const BoolInstr bi135[] = {
785
+ {BO_AND,2,3,2},{BO_XOR,1,2,1},{BO_EQV,0,1,0},
786
+ {BO_HLT,0,0,0}
787
+ };
788
+ const BoolInstr bi136[] = {
789
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_XOR,2,3,1},
790
+ {BO_EQV,0,1,0},
791
+ {BO_HLT,0,0,0}
792
+ };
793
+ const BoolInstr bi137[] = {
794
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
795
+ {BO_XOR,2,3,1},{BO_EQV,0,1,0},
796
+ {BO_HLT,0,0,0}
797
+ };
798
+ const BoolInstr bi138[] = {
799
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
800
+ {BO_EQV,0,1,0},
801
+ {BO_HLT,0,0,0}
802
+ };
803
+ const BoolInstr bi139[] = {
804
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
805
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
806
+ {BO_HLT,0,0,0}
807
+ };
808
+ const BoolInstr bi140[] = {
809
+ {BO_AND,0,1,0},{BO_EQV,2,3,1},{BO_AND,0,1,0},
810
+ {BO_HLT,0,0,0}
811
+ };
812
+ const BoolInstr bi141[] = {
813
+ {BO_AND,0,1,0},{BO_EQV,0,2,0},{BO_AND,0,3,0},
814
+ {BO_HLT,0,0,0}
815
+ };
816
+ const BoolInstr bi142[] = {
817
+ {BO_AND,2,3,2},{BO_EQV,1,2,1},{BO_AND,0,1,0},
818
+ {BO_HLT,0,0,0}
819
+ };
820
+ const BoolInstr bi143[] = {
821
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_EQV,2,3,1},
822
+ {BO_AND,0,1,0},
823
+ {BO_HLT,0,0,0}
824
+ };
825
+ const BoolInstr bi144[] = {
826
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
827
+ {BO_EQV,2,3,1},{BO_AND,0,1,0},
828
+ {BO_HLT,0,0,0}
829
+ };
830
+ const BoolInstr bi145[] = {
831
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
832
+ {BO_AND,0,1,0},
833
+ {BO_HLT,0,0,0}
834
+ };
835
+ const BoolInstr bi146[] = {
836
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
837
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
838
+ {BO_HLT,0,0,0}
839
+ };
840
+ const BoolInstr bi147[] = {
841
+ {BO_AND,0,1,0},{BO_EQV,2,3,1},{BO_OR ,0,1,0},
842
+ {BO_HLT,0,0,0}
843
+ };
844
+ const BoolInstr bi148[] = {
845
+ {BO_AND,0,1,0},{BO_EQV,0,2,0},{BO_OR ,0,3,0},
846
+ {BO_HLT,0,0,0}
847
+ };
848
+ const BoolInstr bi149[] = {
849
+ {BO_AND,2,3,2},{BO_EQV,1,2,1},{BO_OR ,0,1,0},
850
+ {BO_HLT,0,0,0}
851
+ };
852
+ const BoolInstr bi150[] = {
853
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_EQV,2,3,1},
854
+ {BO_OR ,0,1,0},
855
+ {BO_HLT,0,0,0}
856
+ };
857
+ const BoolInstr bi151[] = {
858
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
859
+ {BO_EQV,2,3,1},{BO_OR ,0,1,0},
860
+ {BO_HLT,0,0,0}
861
+ };
862
+ const BoolInstr bi152[] = {
863
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
864
+ {BO_OR ,0,1,0},
865
+ {BO_HLT,0,0,0}
866
+ };
867
+ const BoolInstr bi153[] = {
868
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
869
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
870
+ {BO_HLT,0,0,0}
871
+ };
872
+ const BoolInstr bi154[] = {
873
+ {BO_AND,0,1,0},{BO_EQV,2,3,1},{BO_IMP,0,1,0},
874
+ {BO_HLT,0,0,0}
875
+ };
876
+ const BoolInstr bi155[] = {
877
+ {BO_AND,0,1,0},{BO_EQV,0,2,0},{BO_IMP,0,3,0},
878
+ {BO_HLT,0,0,0}
879
+ };
880
+ const BoolInstr bi156[] = {
881
+ {BO_AND,2,3,2},{BO_EQV,1,2,1},{BO_IMP,0,1,0},
882
+ {BO_HLT,0,0,0}
883
+ };
884
+ const BoolInstr bi157[] = {
885
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_EQV,2,3,1},
886
+ {BO_IMP,0,1,0},
887
+ {BO_HLT,0,0,0}
888
+ };
889
+ const BoolInstr bi158[] = {
890
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
891
+ {BO_EQV,2,3,1},{BO_IMP,0,1,0},
892
+ {BO_HLT,0,0,0}
893
+ };
894
+ const BoolInstr bi159[] = {
895
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
896
+ {BO_IMP,0,1,0},
897
+ {BO_HLT,0,0,0}
898
+ };
899
+ const BoolInstr bi160[] = {
900
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
901
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
902
+ {BO_HLT,0,0,0}
903
+ };
904
+ const BoolInstr bi161[] = {
905
+ {BO_AND,0,1,0},{BO_EQV,2,3,1},{BO_XOR,0,1,0},
906
+ {BO_HLT,0,0,0}
907
+ };
908
+ const BoolInstr bi162[] = {
909
+ {BO_AND,0,1,0},{BO_EQV,0,2,0},{BO_XOR,0,3,0},
910
+ {BO_HLT,0,0,0}
911
+ };
912
+ const BoolInstr bi163[] = {
913
+ {BO_AND,2,3,2},{BO_EQV,1,2,1},{BO_XOR,0,1,0},
914
+ {BO_HLT,0,0,0}
915
+ };
916
+ const BoolInstr bi164[] = {
917
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_EQV,2,3,1},
918
+ {BO_XOR,0,1,0},
919
+ {BO_HLT,0,0,0}
920
+ };
921
+ const BoolInstr bi165[] = {
922
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
923
+ {BO_EQV,2,3,1},{BO_XOR,0,1,0},
924
+ {BO_HLT,0,0,0}
925
+ };
926
+ const BoolInstr bi166[] = {
927
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
928
+ {BO_XOR,0,1,0},
929
+ {BO_HLT,0,0,0}
930
+ };
931
+ const BoolInstr bi167[] = {
932
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
933
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
934
+ {BO_HLT,0,0,0}
935
+ };
936
+ const BoolInstr bi168[] = {
937
+ {BO_AND,0,1,0},{BO_EQV,2,3,1},{BO_EQV,0,1,0},
938
+ {BO_HLT,0,0,0}
939
+ };
940
+ const BoolInstr bi169[] = {
941
+ {BO_AND,0,1,0},{BO_EQV,0,2,0},{BO_EQV,0,3,0},
942
+ {BO_HLT,0,0,0}
943
+ };
944
+ const BoolInstr bi170[] = {
945
+ {BO_AND,2,3,2},{BO_EQV,1,2,1},{BO_EQV,0,1,0},
946
+ {BO_HLT,0,0,0}
947
+ };
948
+ const BoolInstr bi171[] = {
949
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_AND,0,1,0},{BO_EQV,2,3,1},
950
+ {BO_EQV,0,1,0},
951
+ {BO_HLT,0,0,0}
952
+ };
953
+ const BoolInstr bi172[] = {
954
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_AND,0,1,0},
955
+ {BO_EQV,2,3,1},{BO_EQV,0,1,0},
956
+ {BO_HLT,0,0,0}
957
+ };
958
+ const BoolInstr bi173[] = {
959
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
960
+ {BO_EQV,0,1,0},
961
+ {BO_HLT,0,0,0}
962
+ };
963
+ const BoolInstr bi174[] = {
964
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
965
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
966
+ {BO_HLT,0,0,0}
967
+ };
968
+ const BoolInstr bi175[] = {
969
+ {BO_OR ,0,1,0},{BO_AND,2,3,1},{BO_AND,0,1,0},
970
+ {BO_HLT,0,0,0}
971
+ };
972
+ const BoolInstr bi176[] = {
973
+ {BO_OR ,0,1,0},{BO_AND,0,2,0},{BO_AND,0,3,0},
974
+ {BO_HLT,0,0,0}
975
+ };
976
+ const BoolInstr bi177[] = {
977
+ {BO_OR ,2,3,2},{BO_AND,1,2,1},{BO_AND,0,1,0},
978
+ {BO_HLT,0,0,0}
979
+ };
980
+ const BoolInstr bi178[] = {
981
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_AND,2,3,1},
982
+ {BO_AND,0,1,0},
983
+ {BO_HLT,0,0,0}
984
+ };
985
+ const BoolInstr bi179[] = {
986
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
987
+ {BO_AND,2,3,1},{BO_AND,0,1,0},
988
+ {BO_HLT,0,0,0}
989
+ };
990
+ const BoolInstr bi180[] = {
991
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
992
+ {BO_AND,0,1,0},
993
+ {BO_HLT,0,0,0}
994
+ };
995
+ const BoolInstr bi181[] = {
996
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
997
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
998
+ {BO_HLT,0,0,0}
999
+ };
1000
+ const BoolInstr bi182[] = {
1001
+ {BO_OR ,0,1,0},{BO_AND,2,3,1},{BO_OR ,0,1,0},
1002
+ {BO_HLT,0,0,0}
1003
+ };
1004
+ const BoolInstr bi183[] = {
1005
+ {BO_OR ,0,1,0},{BO_AND,0,2,0},{BO_OR ,0,3,0},
1006
+ {BO_HLT,0,0,0}
1007
+ };
1008
+ const BoolInstr bi184[] = {
1009
+ {BO_OR ,2,3,2},{BO_AND,1,2,1},{BO_OR ,0,1,0},
1010
+ {BO_HLT,0,0,0}
1011
+ };
1012
+ const BoolInstr bi185[] = {
1013
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_AND,2,3,1},
1014
+ {BO_OR ,0,1,0},
1015
+ {BO_HLT,0,0,0}
1016
+ };
1017
+ const BoolInstr bi186[] = {
1018
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1019
+ {BO_AND,2,3,1},{BO_OR ,0,1,0},
1020
+ {BO_HLT,0,0,0}
1021
+ };
1022
+ const BoolInstr bi187[] = {
1023
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1024
+ {BO_OR ,0,1,0},
1025
+ {BO_HLT,0,0,0}
1026
+ };
1027
+ const BoolInstr bi188[] = {
1028
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1029
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
1030
+ {BO_HLT,0,0,0}
1031
+ };
1032
+ const BoolInstr bi189[] = {
1033
+ {BO_OR ,0,1,0},{BO_AND,2,3,1},{BO_IMP,0,1,0},
1034
+ {BO_HLT,0,0,0}
1035
+ };
1036
+ const BoolInstr bi190[] = {
1037
+ {BO_OR ,0,1,0},{BO_AND,0,2,0},{BO_IMP,0,3,0},
1038
+ {BO_HLT,0,0,0}
1039
+ };
1040
+ const BoolInstr bi191[] = {
1041
+ {BO_OR ,2,3,2},{BO_AND,1,2,1},{BO_IMP,0,1,0},
1042
+ {BO_HLT,0,0,0}
1043
+ };
1044
+ const BoolInstr bi192[] = {
1045
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_AND,2,3,1},
1046
+ {BO_IMP,0,1,0},
1047
+ {BO_HLT,0,0,0}
1048
+ };
1049
+ const BoolInstr bi193[] = {
1050
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1051
+ {BO_AND,2,3,1},{BO_IMP,0,1,0},
1052
+ {BO_HLT,0,0,0}
1053
+ };
1054
+ const BoolInstr bi194[] = {
1055
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1056
+ {BO_IMP,0,1,0},
1057
+ {BO_HLT,0,0,0}
1058
+ };
1059
+ const BoolInstr bi195[] = {
1060
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1061
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
1062
+ {BO_HLT,0,0,0}
1063
+ };
1064
+ const BoolInstr bi196[] = {
1065
+ {BO_OR ,0,1,0},{BO_AND,2,3,1},{BO_XOR,0,1,0},
1066
+ {BO_HLT,0,0,0}
1067
+ };
1068
+ const BoolInstr bi197[] = {
1069
+ {BO_OR ,0,1,0},{BO_AND,0,2,0},{BO_XOR,0,3,0},
1070
+ {BO_HLT,0,0,0}
1071
+ };
1072
+ const BoolInstr bi198[] = {
1073
+ {BO_OR ,2,3,2},{BO_AND,1,2,1},{BO_XOR,0,1,0},
1074
+ {BO_HLT,0,0,0}
1075
+ };
1076
+ const BoolInstr bi199[] = {
1077
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_AND,2,3,1},
1078
+ {BO_XOR,0,1,0},
1079
+ {BO_HLT,0,0,0}
1080
+ };
1081
+ const BoolInstr bi200[] = {
1082
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1083
+ {BO_AND,2,3,1},{BO_XOR,0,1,0},
1084
+ {BO_HLT,0,0,0}
1085
+ };
1086
+ const BoolInstr bi201[] = {
1087
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1088
+ {BO_XOR,0,1,0},
1089
+ {BO_HLT,0,0,0}
1090
+ };
1091
+ const BoolInstr bi202[] = {
1092
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1093
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
1094
+ {BO_HLT,0,0,0}
1095
+ };
1096
+ const BoolInstr bi203[] = {
1097
+ {BO_OR ,0,1,0},{BO_AND,2,3,1},{BO_EQV,0,1,0},
1098
+ {BO_HLT,0,0,0}
1099
+ };
1100
+ const BoolInstr bi204[] = {
1101
+ {BO_OR ,0,1,0},{BO_AND,0,2,0},{BO_EQV,0,3,0},
1102
+ {BO_HLT,0,0,0}
1103
+ };
1104
+ const BoolInstr bi205[] = {
1105
+ {BO_OR ,2,3,2},{BO_AND,1,2,1},{BO_EQV,0,1,0},
1106
+ {BO_HLT,0,0,0}
1107
+ };
1108
+ const BoolInstr bi206[] = {
1109
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_AND,2,3,1},
1110
+ {BO_EQV,0,1,0},
1111
+ {BO_HLT,0,0,0}
1112
+ };
1113
+ const BoolInstr bi207[] = {
1114
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1115
+ {BO_AND,2,3,1},{BO_EQV,0,1,0},
1116
+ {BO_HLT,0,0,0}
1117
+ };
1118
+ const BoolInstr bi208[] = {
1119
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1120
+ {BO_EQV,0,1,0},
1121
+ {BO_HLT,0,0,0}
1122
+ };
1123
+ const BoolInstr bi209[] = {
1124
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1125
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
1126
+ {BO_HLT,0,0,0}
1127
+ };
1128
+ const BoolInstr bi210[] = {
1129
+ {BO_OR ,0,1,0},{BO_OR ,2,3,1},{BO_AND,0,1,0},
1130
+ {BO_HLT,0,0,0}
1131
+ };
1132
+ const BoolInstr bi211[] = {
1133
+ {BO_OR ,0,1,0},{BO_OR ,0,2,0},{BO_AND,0,3,0},
1134
+ {BO_HLT,0,0,0}
1135
+ };
1136
+ const BoolInstr bi212[] = {
1137
+ {BO_OR ,2,3,2},{BO_OR ,1,2,1},{BO_AND,0,1,0},
1138
+ {BO_HLT,0,0,0}
1139
+ };
1140
+ const BoolInstr bi213[] = {
1141
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_OR ,2,3,1},
1142
+ {BO_AND,0,1,0},
1143
+ {BO_HLT,0,0,0}
1144
+ };
1145
+ const BoolInstr bi214[] = {
1146
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1147
+ {BO_OR ,2,3,1},{BO_AND,0,1,0},
1148
+ {BO_HLT,0,0,0}
1149
+ };
1150
+ const BoolInstr bi215[] = {
1151
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1152
+ {BO_AND,0,1,0},
1153
+ {BO_HLT,0,0,0}
1154
+ };
1155
+ const BoolInstr bi216[] = {
1156
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1157
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
1158
+ {BO_HLT,0,0,0}
1159
+ };
1160
+ const BoolInstr bi217[] = {
1161
+ {BO_OR ,0,1,0},{BO_OR ,2,3,1},{BO_OR ,0,1,0},
1162
+ {BO_HLT,0,0,0}
1163
+ };
1164
+ const BoolInstr bi218[] = {
1165
+ {BO_OR ,0,1,0},{BO_OR ,0,2,0},{BO_OR ,0,3,0},
1166
+ {BO_HLT,0,0,0}
1167
+ };
1168
+ const BoolInstr bi219[] = {
1169
+ {BO_OR ,2,3,2},{BO_OR ,1,2,1},{BO_OR ,0,1,0},
1170
+ {BO_HLT,0,0,0}
1171
+ };
1172
+ const BoolInstr bi220[] = {
1173
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_OR ,2,3,1},
1174
+ {BO_OR ,0,1,0},
1175
+ {BO_HLT,0,0,0}
1176
+ };
1177
+ const BoolInstr bi221[] = {
1178
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1179
+ {BO_OR ,2,3,1},{BO_OR ,0,1,0},
1180
+ {BO_HLT,0,0,0}
1181
+ };
1182
+ const BoolInstr bi222[] = {
1183
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1184
+ {BO_OR ,0,1,0},
1185
+ {BO_HLT,0,0,0}
1186
+ };
1187
+ const BoolInstr bi223[] = {
1188
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1189
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
1190
+ {BO_HLT,0,0,0}
1191
+ };
1192
+ const BoolInstr bi224[] = {
1193
+ {BO_OR ,0,1,0},{BO_OR ,2,3,1},{BO_IMP,0,1,0},
1194
+ {BO_HLT,0,0,0}
1195
+ };
1196
+ const BoolInstr bi225[] = {
1197
+ {BO_OR ,0,1,0},{BO_OR ,0,2,0},{BO_IMP,0,3,0},
1198
+ {BO_HLT,0,0,0}
1199
+ };
1200
+ const BoolInstr bi226[] = {
1201
+ {BO_OR ,2,3,2},{BO_OR ,1,2,1},{BO_IMP,0,1,0},
1202
+ {BO_HLT,0,0,0}
1203
+ };
1204
+ const BoolInstr bi227[] = {
1205
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_OR ,2,3,1},
1206
+ {BO_IMP,0,1,0},
1207
+ {BO_HLT,0,0,0}
1208
+ };
1209
+ const BoolInstr bi228[] = {
1210
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1211
+ {BO_OR ,2,3,1},{BO_IMP,0,1,0},
1212
+ {BO_HLT,0,0,0}
1213
+ };
1214
+ const BoolInstr bi229[] = {
1215
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1216
+ {BO_IMP,0,1,0},
1217
+ {BO_HLT,0,0,0}
1218
+ };
1219
+ const BoolInstr bi230[] = {
1220
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1221
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
1222
+ {BO_HLT,0,0,0}
1223
+ };
1224
+ const BoolInstr bi231[] = {
1225
+ {BO_OR ,0,1,0},{BO_OR ,2,3,1},{BO_XOR,0,1,0},
1226
+ {BO_HLT,0,0,0}
1227
+ };
1228
+ const BoolInstr bi232[] = {
1229
+ {BO_OR ,0,1,0},{BO_OR ,0,2,0},{BO_XOR,0,3,0},
1230
+ {BO_HLT,0,0,0}
1231
+ };
1232
+ const BoolInstr bi233[] = {
1233
+ {BO_OR ,2,3,2},{BO_OR ,1,2,1},{BO_XOR,0,1,0},
1234
+ {BO_HLT,0,0,0}
1235
+ };
1236
+ const BoolInstr bi234[] = {
1237
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_OR ,2,3,1},
1238
+ {BO_XOR,0,1,0},
1239
+ {BO_HLT,0,0,0}
1240
+ };
1241
+ const BoolInstr bi235[] = {
1242
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1243
+ {BO_OR ,2,3,1},{BO_XOR,0,1,0},
1244
+ {BO_HLT,0,0,0}
1245
+ };
1246
+ const BoolInstr bi236[] = {
1247
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1248
+ {BO_XOR,0,1,0},
1249
+ {BO_HLT,0,0,0}
1250
+ };
1251
+ const BoolInstr bi237[] = {
1252
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1253
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
1254
+ {BO_HLT,0,0,0}
1255
+ };
1256
+ const BoolInstr bi238[] = {
1257
+ {BO_OR ,0,1,0},{BO_OR ,2,3,1},{BO_EQV,0,1,0},
1258
+ {BO_HLT,0,0,0}
1259
+ };
1260
+ const BoolInstr bi239[] = {
1261
+ {BO_OR ,0,1,0},{BO_OR ,0,2,0},{BO_EQV,0,3,0},
1262
+ {BO_HLT,0,0,0}
1263
+ };
1264
+ const BoolInstr bi240[] = {
1265
+ {BO_OR ,2,3,2},{BO_OR ,1,2,1},{BO_EQV,0,1,0},
1266
+ {BO_HLT,0,0,0}
1267
+ };
1268
+ const BoolInstr bi241[] = {
1269
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_OR ,2,3,1},
1270
+ {BO_EQV,0,1,0},
1271
+ {BO_HLT,0,0,0}
1272
+ };
1273
+ const BoolInstr bi242[] = {
1274
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1275
+ {BO_OR ,2,3,1},{BO_EQV,0,1,0},
1276
+ {BO_HLT,0,0,0}
1277
+ };
1278
+ const BoolInstr bi243[] = {
1279
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1280
+ {BO_EQV,0,1,0},
1281
+ {BO_HLT,0,0,0}
1282
+ };
1283
+ const BoolInstr bi244[] = {
1284
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1285
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
1286
+ {BO_HLT,0,0,0}
1287
+ };
1288
+ const BoolInstr bi245[] = {
1289
+ {BO_OR ,0,1,0},{BO_IMP,2,3,1},{BO_AND,0,1,0},
1290
+ {BO_HLT,0,0,0}
1291
+ };
1292
+ const BoolInstr bi246[] = {
1293
+ {BO_OR ,0,1,0},{BO_IMP,0,2,0},{BO_AND,0,3,0},
1294
+ {BO_HLT,0,0,0}
1295
+ };
1296
+ const BoolInstr bi247[] = {
1297
+ {BO_OR ,2,3,2},{BO_IMP,1,2,1},{BO_AND,0,1,0},
1298
+ {BO_HLT,0,0,0}
1299
+ };
1300
+ const BoolInstr bi248[] = {
1301
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_IMP,2,3,1},
1302
+ {BO_AND,0,1,0},
1303
+ {BO_HLT,0,0,0}
1304
+ };
1305
+ const BoolInstr bi249[] = {
1306
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1307
+ {BO_IMP,2,3,1},{BO_AND,0,1,0},
1308
+ {BO_HLT,0,0,0}
1309
+ };
1310
+ const BoolInstr bi250[] = {
1311
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1312
+ {BO_AND,0,1,0},
1313
+ {BO_HLT,0,0,0}
1314
+ };
1315
+ const BoolInstr bi251[] = {
1316
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1317
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
1318
+ {BO_HLT,0,0,0}
1319
+ };
1320
+ const BoolInstr bi252[] = {
1321
+ {BO_OR ,0,1,0},{BO_IMP,2,3,1},{BO_OR ,0,1,0},
1322
+ {BO_HLT,0,0,0}
1323
+ };
1324
+ const BoolInstr bi253[] = {
1325
+ {BO_OR ,0,1,0},{BO_IMP,0,2,0},{BO_OR ,0,3,0},
1326
+ {BO_HLT,0,0,0}
1327
+ };
1328
+ const BoolInstr bi254[] = {
1329
+ {BO_OR ,2,3,2},{BO_IMP,1,2,1},{BO_OR ,0,1,0},
1330
+ {BO_HLT,0,0,0}
1331
+ };
1332
+ const BoolInstr bi255[] = {
1333
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_IMP,2,3,1},
1334
+ {BO_OR ,0,1,0},
1335
+ {BO_HLT,0,0,0}
1336
+ };
1337
+ const BoolInstr bi256[] = {
1338
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1339
+ {BO_IMP,2,3,1},{BO_OR ,0,1,0},
1340
+ {BO_HLT,0,0,0}
1341
+ };
1342
+ const BoolInstr bi257[] = {
1343
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1344
+ {BO_OR ,0,1,0},
1345
+ {BO_HLT,0,0,0}
1346
+ };
1347
+ const BoolInstr bi258[] = {
1348
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1349
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
1350
+ {BO_HLT,0,0,0}
1351
+ };
1352
+ const BoolInstr bi259[] = {
1353
+ {BO_OR ,0,1,0},{BO_IMP,2,3,1},{BO_IMP,0,1,0},
1354
+ {BO_HLT,0,0,0}
1355
+ };
1356
+ const BoolInstr bi260[] = {
1357
+ {BO_OR ,0,1,0},{BO_IMP,0,2,0},{BO_IMP,0,3,0},
1358
+ {BO_HLT,0,0,0}
1359
+ };
1360
+ const BoolInstr bi261[] = {
1361
+ {BO_OR ,2,3,2},{BO_IMP,1,2,1},{BO_IMP,0,1,0},
1362
+ {BO_HLT,0,0,0}
1363
+ };
1364
+ const BoolInstr bi262[] = {
1365
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_IMP,2,3,1},
1366
+ {BO_IMP,0,1,0},
1367
+ {BO_HLT,0,0,0}
1368
+ };
1369
+ const BoolInstr bi263[] = {
1370
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1371
+ {BO_IMP,2,3,1},{BO_IMP,0,1,0},
1372
+ {BO_HLT,0,0,0}
1373
+ };
1374
+ const BoolInstr bi264[] = {
1375
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1376
+ {BO_IMP,0,1,0},
1377
+ {BO_HLT,0,0,0}
1378
+ };
1379
+ const BoolInstr bi265[] = {
1380
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1381
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
1382
+ {BO_HLT,0,0,0}
1383
+ };
1384
+ const BoolInstr bi266[] = {
1385
+ {BO_OR ,0,1,0},{BO_IMP,2,3,1},{BO_XOR,0,1,0},
1386
+ {BO_HLT,0,0,0}
1387
+ };
1388
+ const BoolInstr bi267[] = {
1389
+ {BO_OR ,0,1,0},{BO_IMP,0,2,0},{BO_XOR,0,3,0},
1390
+ {BO_HLT,0,0,0}
1391
+ };
1392
+ const BoolInstr bi268[] = {
1393
+ {BO_OR ,2,3,2},{BO_IMP,1,2,1},{BO_XOR,0,1,0},
1394
+ {BO_HLT,0,0,0}
1395
+ };
1396
+ const BoolInstr bi269[] = {
1397
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_IMP,2,3,1},
1398
+ {BO_XOR,0,1,0},
1399
+ {BO_HLT,0,0,0}
1400
+ };
1401
+ const BoolInstr bi270[] = {
1402
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1403
+ {BO_IMP,2,3,1},{BO_XOR,0,1,0},
1404
+ {BO_HLT,0,0,0}
1405
+ };
1406
+ const BoolInstr bi271[] = {
1407
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1408
+ {BO_XOR,0,1,0},
1409
+ {BO_HLT,0,0,0}
1410
+ };
1411
+ const BoolInstr bi272[] = {
1412
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1413
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
1414
+ {BO_HLT,0,0,0}
1415
+ };
1416
+ const BoolInstr bi273[] = {
1417
+ {BO_OR ,0,1,0},{BO_IMP,2,3,1},{BO_EQV,0,1,0},
1418
+ {BO_HLT,0,0,0}
1419
+ };
1420
+ const BoolInstr bi274[] = {
1421
+ {BO_OR ,0,1,0},{BO_IMP,0,2,0},{BO_EQV,0,3,0},
1422
+ {BO_HLT,0,0,0}
1423
+ };
1424
+ const BoolInstr bi275[] = {
1425
+ {BO_OR ,2,3,2},{BO_IMP,1,2,1},{BO_EQV,0,1,0},
1426
+ {BO_HLT,0,0,0}
1427
+ };
1428
+ const BoolInstr bi276[] = {
1429
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_IMP,2,3,1},
1430
+ {BO_EQV,0,1,0},
1431
+ {BO_HLT,0,0,0}
1432
+ };
1433
+ const BoolInstr bi277[] = {
1434
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1435
+ {BO_IMP,2,3,1},{BO_EQV,0,1,0},
1436
+ {BO_HLT,0,0,0}
1437
+ };
1438
+ const BoolInstr bi278[] = {
1439
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1440
+ {BO_EQV,0,1,0},
1441
+ {BO_HLT,0,0,0}
1442
+ };
1443
+ const BoolInstr bi279[] = {
1444
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
1445
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
1446
+ {BO_HLT,0,0,0}
1447
+ };
1448
+ const BoolInstr bi280[] = {
1449
+ {BO_OR ,0,1,0},{BO_XOR,2,3,1},{BO_AND,0,1,0},
1450
+ {BO_HLT,0,0,0}
1451
+ };
1452
+ const BoolInstr bi281[] = {
1453
+ {BO_OR ,0,1,0},{BO_XOR,0,2,0},{BO_AND,0,3,0},
1454
+ {BO_HLT,0,0,0}
1455
+ };
1456
+ const BoolInstr bi282[] = {
1457
+ {BO_OR ,2,3,2},{BO_XOR,1,2,1},{BO_AND,0,1,0},
1458
+ {BO_HLT,0,0,0}
1459
+ };
1460
+ const BoolInstr bi283[] = {
1461
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_XOR,2,3,1},
1462
+ {BO_AND,0,1,0},
1463
+ {BO_HLT,0,0,0}
1464
+ };
1465
+ const BoolInstr bi284[] = {
1466
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1467
+ {BO_XOR,2,3,1},{BO_AND,0,1,0},
1468
+ {BO_HLT,0,0,0}
1469
+ };
1470
+ const BoolInstr bi285[] = {
1471
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1472
+ {BO_AND,0,1,0},
1473
+ {BO_HLT,0,0,0}
1474
+ };
1475
+ const BoolInstr bi286[] = {
1476
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1477
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
1478
+ {BO_HLT,0,0,0}
1479
+ };
1480
+ const BoolInstr bi287[] = {
1481
+ {BO_OR ,0,1,0},{BO_XOR,2,3,1},{BO_OR ,0,1,0},
1482
+ {BO_HLT,0,0,0}
1483
+ };
1484
+ const BoolInstr bi288[] = {
1485
+ {BO_OR ,0,1,0},{BO_XOR,0,2,0},{BO_OR ,0,3,0},
1486
+ {BO_HLT,0,0,0}
1487
+ };
1488
+ const BoolInstr bi289[] = {
1489
+ {BO_OR ,2,3,2},{BO_XOR,1,2,1},{BO_OR ,0,1,0},
1490
+ {BO_HLT,0,0,0}
1491
+ };
1492
+ const BoolInstr bi290[] = {
1493
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_XOR,2,3,1},
1494
+ {BO_OR ,0,1,0},
1495
+ {BO_HLT,0,0,0}
1496
+ };
1497
+ const BoolInstr bi291[] = {
1498
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1499
+ {BO_XOR,2,3,1},{BO_OR ,0,1,0},
1500
+ {BO_HLT,0,0,0}
1501
+ };
1502
+ const BoolInstr bi292[] = {
1503
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1504
+ {BO_OR ,0,1,0},
1505
+ {BO_HLT,0,0,0}
1506
+ };
1507
+ const BoolInstr bi293[] = {
1508
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1509
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
1510
+ {BO_HLT,0,0,0}
1511
+ };
1512
+ const BoolInstr bi294[] = {
1513
+ {BO_OR ,0,1,0},{BO_XOR,2,3,1},{BO_IMP,0,1,0},
1514
+ {BO_HLT,0,0,0}
1515
+ };
1516
+ const BoolInstr bi295[] = {
1517
+ {BO_OR ,0,1,0},{BO_XOR,0,2,0},{BO_IMP,0,3,0},
1518
+ {BO_HLT,0,0,0}
1519
+ };
1520
+ const BoolInstr bi296[] = {
1521
+ {BO_OR ,2,3,2},{BO_XOR,1,2,1},{BO_IMP,0,1,0},
1522
+ {BO_HLT,0,0,0}
1523
+ };
1524
+ const BoolInstr bi297[] = {
1525
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_XOR,2,3,1},
1526
+ {BO_IMP,0,1,0},
1527
+ {BO_HLT,0,0,0}
1528
+ };
1529
+ const BoolInstr bi298[] = {
1530
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1531
+ {BO_XOR,2,3,1},{BO_IMP,0,1,0},
1532
+ {BO_HLT,0,0,0}
1533
+ };
1534
+ const BoolInstr bi299[] = {
1535
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1536
+ {BO_IMP,0,1,0},
1537
+ {BO_HLT,0,0,0}
1538
+ };
1539
+ const BoolInstr bi300[] = {
1540
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1541
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
1542
+ {BO_HLT,0,0,0}
1543
+ };
1544
+ const BoolInstr bi301[] = {
1545
+ {BO_OR ,0,1,0},{BO_XOR,2,3,1},{BO_XOR,0,1,0},
1546
+ {BO_HLT,0,0,0}
1547
+ };
1548
+ const BoolInstr bi302[] = {
1549
+ {BO_OR ,0,1,0},{BO_XOR,0,2,0},{BO_XOR,0,3,0},
1550
+ {BO_HLT,0,0,0}
1551
+ };
1552
+ const BoolInstr bi303[] = {
1553
+ {BO_OR ,2,3,2},{BO_XOR,1,2,1},{BO_XOR,0,1,0},
1554
+ {BO_HLT,0,0,0}
1555
+ };
1556
+ const BoolInstr bi304[] = {
1557
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_XOR,2,3,1},
1558
+ {BO_XOR,0,1,0},
1559
+ {BO_HLT,0,0,0}
1560
+ };
1561
+ const BoolInstr bi305[] = {
1562
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1563
+ {BO_XOR,2,3,1},{BO_XOR,0,1,0},
1564
+ {BO_HLT,0,0,0}
1565
+ };
1566
+ const BoolInstr bi306[] = {
1567
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1568
+ {BO_XOR,0,1,0},
1569
+ {BO_HLT,0,0,0}
1570
+ };
1571
+ const BoolInstr bi307[] = {
1572
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1573
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
1574
+ {BO_HLT,0,0,0}
1575
+ };
1576
+ const BoolInstr bi308[] = {
1577
+ {BO_OR ,0,1,0},{BO_XOR,2,3,1},{BO_EQV,0,1,0},
1578
+ {BO_HLT,0,0,0}
1579
+ };
1580
+ const BoolInstr bi309[] = {
1581
+ {BO_OR ,0,1,0},{BO_XOR,0,2,0},{BO_EQV,0,3,0},
1582
+ {BO_HLT,0,0,0}
1583
+ };
1584
+ const BoolInstr bi310[] = {
1585
+ {BO_OR ,2,3,2},{BO_XOR,1,2,1},{BO_EQV,0,1,0},
1586
+ {BO_HLT,0,0,0}
1587
+ };
1588
+ const BoolInstr bi311[] = {
1589
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_XOR,2,3,1},
1590
+ {BO_EQV,0,1,0},
1591
+ {BO_HLT,0,0,0}
1592
+ };
1593
+ const BoolInstr bi312[] = {
1594
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1595
+ {BO_XOR,2,3,1},{BO_EQV,0,1,0},
1596
+ {BO_HLT,0,0,0}
1597
+ };
1598
+ const BoolInstr bi313[] = {
1599
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1600
+ {BO_EQV,0,1,0},
1601
+ {BO_HLT,0,0,0}
1602
+ };
1603
+ const BoolInstr bi314[] = {
1604
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
1605
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
1606
+ {BO_HLT,0,0,0}
1607
+ };
1608
+ const BoolInstr bi315[] = {
1609
+ {BO_OR ,0,1,0},{BO_EQV,2,3,1},{BO_AND,0,1,0},
1610
+ {BO_HLT,0,0,0}
1611
+ };
1612
+ const BoolInstr bi316[] = {
1613
+ {BO_OR ,0,1,0},{BO_EQV,0,2,0},{BO_AND,0,3,0},
1614
+ {BO_HLT,0,0,0}
1615
+ };
1616
+ const BoolInstr bi317[] = {
1617
+ {BO_OR ,2,3,2},{BO_EQV,1,2,1},{BO_AND,0,1,0},
1618
+ {BO_HLT,0,0,0}
1619
+ };
1620
+ const BoolInstr bi318[] = {
1621
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_EQV,2,3,1},
1622
+ {BO_AND,0,1,0},
1623
+ {BO_HLT,0,0,0}
1624
+ };
1625
+ const BoolInstr bi319[] = {
1626
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1627
+ {BO_EQV,2,3,1},{BO_AND,0,1,0},
1628
+ {BO_HLT,0,0,0}
1629
+ };
1630
+ const BoolInstr bi320[] = {
1631
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1632
+ {BO_AND,0,1,0},
1633
+ {BO_HLT,0,0,0}
1634
+ };
1635
+ const BoolInstr bi321[] = {
1636
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1637
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
1638
+ {BO_HLT,0,0,0}
1639
+ };
1640
+ const BoolInstr bi322[] = {
1641
+ {BO_OR ,0,1,0},{BO_EQV,2,3,1},{BO_OR ,0,1,0},
1642
+ {BO_HLT,0,0,0}
1643
+ };
1644
+ const BoolInstr bi323[] = {
1645
+ {BO_OR ,0,1,0},{BO_EQV,0,2,0},{BO_OR ,0,3,0},
1646
+ {BO_HLT,0,0,0}
1647
+ };
1648
+ const BoolInstr bi324[] = {
1649
+ {BO_OR ,2,3,2},{BO_EQV,1,2,1},{BO_OR ,0,1,0},
1650
+ {BO_HLT,0,0,0}
1651
+ };
1652
+ const BoolInstr bi325[] = {
1653
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_EQV,2,3,1},
1654
+ {BO_OR ,0,1,0},
1655
+ {BO_HLT,0,0,0}
1656
+ };
1657
+ const BoolInstr bi326[] = {
1658
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1659
+ {BO_EQV,2,3,1},{BO_OR ,0,1,0},
1660
+ {BO_HLT,0,0,0}
1661
+ };
1662
+ const BoolInstr bi327[] = {
1663
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1664
+ {BO_OR ,0,1,0},
1665
+ {BO_HLT,0,0,0}
1666
+ };
1667
+ const BoolInstr bi328[] = {
1668
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1669
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
1670
+ {BO_HLT,0,0,0}
1671
+ };
1672
+ const BoolInstr bi329[] = {
1673
+ {BO_OR ,0,1,0},{BO_EQV,2,3,1},{BO_IMP,0,1,0},
1674
+ {BO_HLT,0,0,0}
1675
+ };
1676
+ const BoolInstr bi330[] = {
1677
+ {BO_OR ,0,1,0},{BO_EQV,0,2,0},{BO_IMP,0,3,0},
1678
+ {BO_HLT,0,0,0}
1679
+ };
1680
+ const BoolInstr bi331[] = {
1681
+ {BO_OR ,2,3,2},{BO_EQV,1,2,1},{BO_IMP,0,1,0},
1682
+ {BO_HLT,0,0,0}
1683
+ };
1684
+ const BoolInstr bi332[] = {
1685
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_EQV,2,3,1},
1686
+ {BO_IMP,0,1,0},
1687
+ {BO_HLT,0,0,0}
1688
+ };
1689
+ const BoolInstr bi333[] = {
1690
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1691
+ {BO_EQV,2,3,1},{BO_IMP,0,1,0},
1692
+ {BO_HLT,0,0,0}
1693
+ };
1694
+ const BoolInstr bi334[] = {
1695
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1696
+ {BO_IMP,0,1,0},
1697
+ {BO_HLT,0,0,0}
1698
+ };
1699
+ const BoolInstr bi335[] = {
1700
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1701
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
1702
+ {BO_HLT,0,0,0}
1703
+ };
1704
+ const BoolInstr bi336[] = {
1705
+ {BO_OR ,0,1,0},{BO_EQV,2,3,1},{BO_XOR,0,1,0},
1706
+ {BO_HLT,0,0,0}
1707
+ };
1708
+ const BoolInstr bi337[] = {
1709
+ {BO_OR ,0,1,0},{BO_EQV,0,2,0},{BO_XOR,0,3,0},
1710
+ {BO_HLT,0,0,0}
1711
+ };
1712
+ const BoolInstr bi338[] = {
1713
+ {BO_OR ,2,3,2},{BO_EQV,1,2,1},{BO_XOR,0,1,0},
1714
+ {BO_HLT,0,0,0}
1715
+ };
1716
+ const BoolInstr bi339[] = {
1717
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_EQV,2,3,1},
1718
+ {BO_XOR,0,1,0},
1719
+ {BO_HLT,0,0,0}
1720
+ };
1721
+ const BoolInstr bi340[] = {
1722
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1723
+ {BO_EQV,2,3,1},{BO_XOR,0,1,0},
1724
+ {BO_HLT,0,0,0}
1725
+ };
1726
+ const BoolInstr bi341[] = {
1727
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1728
+ {BO_XOR,0,1,0},
1729
+ {BO_HLT,0,0,0}
1730
+ };
1731
+ const BoolInstr bi342[] = {
1732
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1733
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
1734
+ {BO_HLT,0,0,0}
1735
+ };
1736
+ const BoolInstr bi343[] = {
1737
+ {BO_OR ,0,1,0},{BO_EQV,2,3,1},{BO_EQV,0,1,0},
1738
+ {BO_HLT,0,0,0}
1739
+ };
1740
+ const BoolInstr bi344[] = {
1741
+ {BO_OR ,0,1,0},{BO_EQV,0,2,0},{BO_EQV,0,3,0},
1742
+ {BO_HLT,0,0,0}
1743
+ };
1744
+ const BoolInstr bi345[] = {
1745
+ {BO_OR ,2,3,2},{BO_EQV,1,2,1},{BO_EQV,0,1,0},
1746
+ {BO_HLT,0,0,0}
1747
+ };
1748
+ const BoolInstr bi346[] = {
1749
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_OR ,0,1,0},{BO_EQV,2,3,1},
1750
+ {BO_EQV,0,1,0},
1751
+ {BO_HLT,0,0,0}
1752
+ };
1753
+ const BoolInstr bi347[] = {
1754
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_OR ,0,1,0},
1755
+ {BO_EQV,2,3,1},{BO_EQV,0,1,0},
1756
+ {BO_HLT,0,0,0}
1757
+ };
1758
+ const BoolInstr bi348[] = {
1759
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1760
+ {BO_EQV,0,1,0},
1761
+ {BO_HLT,0,0,0}
1762
+ };
1763
+ const BoolInstr bi349[] = {
1764
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
1765
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
1766
+ {BO_HLT,0,0,0}
1767
+ };
1768
+ const BoolInstr bi350[] = {
1769
+ {BO_IMP,0,1,0},{BO_AND,2,3,1},{BO_AND,0,1,0},
1770
+ {BO_HLT,0,0,0}
1771
+ };
1772
+ const BoolInstr bi351[] = {
1773
+ {BO_IMP,0,1,0},{BO_AND,0,2,0},{BO_AND,0,3,0},
1774
+ {BO_HLT,0,0,0}
1775
+ };
1776
+ const BoolInstr bi352[] = {
1777
+ {BO_IMP,2,3,2},{BO_AND,1,2,1},{BO_AND,0,1,0},
1778
+ {BO_HLT,0,0,0}
1779
+ };
1780
+ const BoolInstr bi353[] = {
1781
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_AND,2,3,1},
1782
+ {BO_AND,0,1,0},
1783
+ {BO_HLT,0,0,0}
1784
+ };
1785
+ const BoolInstr bi354[] = {
1786
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
1787
+ {BO_AND,2,3,1},{BO_AND,0,1,0},
1788
+ {BO_HLT,0,0,0}
1789
+ };
1790
+ const BoolInstr bi355[] = {
1791
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1792
+ {BO_AND,0,1,0},
1793
+ {BO_HLT,0,0,0}
1794
+ };
1795
+ const BoolInstr bi356[] = {
1796
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1797
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
1798
+ {BO_HLT,0,0,0}
1799
+ };
1800
+ const BoolInstr bi357[] = {
1801
+ {BO_IMP,0,1,0},{BO_AND,2,3,1},{BO_OR ,0,1,0},
1802
+ {BO_HLT,0,0,0}
1803
+ };
1804
+ const BoolInstr bi358[] = {
1805
+ {BO_IMP,0,1,0},{BO_AND,0,2,0},{BO_OR ,0,3,0},
1806
+ {BO_HLT,0,0,0}
1807
+ };
1808
+ const BoolInstr bi359[] = {
1809
+ {BO_IMP,2,3,2},{BO_AND,1,2,1},{BO_OR ,0,1,0},
1810
+ {BO_HLT,0,0,0}
1811
+ };
1812
+ const BoolInstr bi360[] = {
1813
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_AND,2,3,1},
1814
+ {BO_OR ,0,1,0},
1815
+ {BO_HLT,0,0,0}
1816
+ };
1817
+ const BoolInstr bi361[] = {
1818
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
1819
+ {BO_AND,2,3,1},{BO_OR ,0,1,0},
1820
+ {BO_HLT,0,0,0}
1821
+ };
1822
+ const BoolInstr bi362[] = {
1823
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1824
+ {BO_OR ,0,1,0},
1825
+ {BO_HLT,0,0,0}
1826
+ };
1827
+ const BoolInstr bi363[] = {
1828
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1829
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
1830
+ {BO_HLT,0,0,0}
1831
+ };
1832
+ const BoolInstr bi364[] = {
1833
+ {BO_IMP,0,1,0},{BO_AND,2,3,1},{BO_IMP,0,1,0},
1834
+ {BO_HLT,0,0,0}
1835
+ };
1836
+ const BoolInstr bi365[] = {
1837
+ {BO_IMP,0,1,0},{BO_AND,0,2,0},{BO_IMP,0,3,0},
1838
+ {BO_HLT,0,0,0}
1839
+ };
1840
+ const BoolInstr bi366[] = {
1841
+ {BO_IMP,2,3,2},{BO_AND,1,2,1},{BO_IMP,0,1,0},
1842
+ {BO_HLT,0,0,0}
1843
+ };
1844
+ const BoolInstr bi367[] = {
1845
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_AND,2,3,1},
1846
+ {BO_IMP,0,1,0},
1847
+ {BO_HLT,0,0,0}
1848
+ };
1849
+ const BoolInstr bi368[] = {
1850
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
1851
+ {BO_AND,2,3,1},{BO_IMP,0,1,0},
1852
+ {BO_HLT,0,0,0}
1853
+ };
1854
+ const BoolInstr bi369[] = {
1855
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1856
+ {BO_IMP,0,1,0},
1857
+ {BO_HLT,0,0,0}
1858
+ };
1859
+ const BoolInstr bi370[] = {
1860
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1861
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
1862
+ {BO_HLT,0,0,0}
1863
+ };
1864
+ const BoolInstr bi371[] = {
1865
+ {BO_IMP,0,1,0},{BO_AND,2,3,1},{BO_XOR,0,1,0},
1866
+ {BO_HLT,0,0,0}
1867
+ };
1868
+ const BoolInstr bi372[] = {
1869
+ {BO_IMP,0,1,0},{BO_AND,0,2,0},{BO_XOR,0,3,0},
1870
+ {BO_HLT,0,0,0}
1871
+ };
1872
+ const BoolInstr bi373[] = {
1873
+ {BO_IMP,2,3,2},{BO_AND,1,2,1},{BO_XOR,0,1,0},
1874
+ {BO_HLT,0,0,0}
1875
+ };
1876
+ const BoolInstr bi374[] = {
1877
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_AND,2,3,1},
1878
+ {BO_XOR,0,1,0},
1879
+ {BO_HLT,0,0,0}
1880
+ };
1881
+ const BoolInstr bi375[] = {
1882
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
1883
+ {BO_AND,2,3,1},{BO_XOR,0,1,0},
1884
+ {BO_HLT,0,0,0}
1885
+ };
1886
+ const BoolInstr bi376[] = {
1887
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1888
+ {BO_XOR,0,1,0},
1889
+ {BO_HLT,0,0,0}
1890
+ };
1891
+ const BoolInstr bi377[] = {
1892
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1893
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
1894
+ {BO_HLT,0,0,0}
1895
+ };
1896
+ const BoolInstr bi378[] = {
1897
+ {BO_IMP,0,1,0},{BO_AND,2,3,1},{BO_EQV,0,1,0},
1898
+ {BO_HLT,0,0,0}
1899
+ };
1900
+ const BoolInstr bi379[] = {
1901
+ {BO_IMP,0,1,0},{BO_AND,0,2,0},{BO_EQV,0,3,0},
1902
+ {BO_HLT,0,0,0}
1903
+ };
1904
+ const BoolInstr bi380[] = {
1905
+ {BO_IMP,2,3,2},{BO_AND,1,2,1},{BO_EQV,0,1,0},
1906
+ {BO_HLT,0,0,0}
1907
+ };
1908
+ const BoolInstr bi381[] = {
1909
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_AND,2,3,1},
1910
+ {BO_EQV,0,1,0},
1911
+ {BO_HLT,0,0,0}
1912
+ };
1913
+ const BoolInstr bi382[] = {
1914
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
1915
+ {BO_AND,2,3,1},{BO_EQV,0,1,0},
1916
+ {BO_HLT,0,0,0}
1917
+ };
1918
+ const BoolInstr bi383[] = {
1919
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1920
+ {BO_EQV,0,1,0},
1921
+ {BO_HLT,0,0,0}
1922
+ };
1923
+ const BoolInstr bi384[] = {
1924
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
1925
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
1926
+ {BO_HLT,0,0,0}
1927
+ };
1928
+ const BoolInstr bi385[] = {
1929
+ {BO_IMP,0,1,0},{BO_OR ,2,3,1},{BO_AND,0,1,0},
1930
+ {BO_HLT,0,0,0}
1931
+ };
1932
+ const BoolInstr bi386[] = {
1933
+ {BO_IMP,0,1,0},{BO_OR ,0,2,0},{BO_AND,0,3,0},
1934
+ {BO_HLT,0,0,0}
1935
+ };
1936
+ const BoolInstr bi387[] = {
1937
+ {BO_IMP,2,3,2},{BO_OR ,1,2,1},{BO_AND,0,1,0},
1938
+ {BO_HLT,0,0,0}
1939
+ };
1940
+ const BoolInstr bi388[] = {
1941
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_OR ,2,3,1},
1942
+ {BO_AND,0,1,0},
1943
+ {BO_HLT,0,0,0}
1944
+ };
1945
+ const BoolInstr bi389[] = {
1946
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
1947
+ {BO_OR ,2,3,1},{BO_AND,0,1,0},
1948
+ {BO_HLT,0,0,0}
1949
+ };
1950
+ const BoolInstr bi390[] = {
1951
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1952
+ {BO_AND,0,1,0},
1953
+ {BO_HLT,0,0,0}
1954
+ };
1955
+ const BoolInstr bi391[] = {
1956
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1957
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
1958
+ {BO_HLT,0,0,0}
1959
+ };
1960
+ const BoolInstr bi392[] = {
1961
+ {BO_IMP,0,1,0},{BO_OR ,2,3,1},{BO_OR ,0,1,0},
1962
+ {BO_HLT,0,0,0}
1963
+ };
1964
+ const BoolInstr bi393[] = {
1965
+ {BO_IMP,0,1,0},{BO_OR ,0,2,0},{BO_OR ,0,3,0},
1966
+ {BO_HLT,0,0,0}
1967
+ };
1968
+ const BoolInstr bi394[] = {
1969
+ {BO_IMP,2,3,2},{BO_OR ,1,2,1},{BO_OR ,0,1,0},
1970
+ {BO_HLT,0,0,0}
1971
+ };
1972
+ const BoolInstr bi395[] = {
1973
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_OR ,2,3,1},
1974
+ {BO_OR ,0,1,0},
1975
+ {BO_HLT,0,0,0}
1976
+ };
1977
+ const BoolInstr bi396[] = {
1978
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
1979
+ {BO_OR ,2,3,1},{BO_OR ,0,1,0},
1980
+ {BO_HLT,0,0,0}
1981
+ };
1982
+ const BoolInstr bi397[] = {
1983
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1984
+ {BO_OR ,0,1,0},
1985
+ {BO_HLT,0,0,0}
1986
+ };
1987
+ const BoolInstr bi398[] = {
1988
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
1989
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
1990
+ {BO_HLT,0,0,0}
1991
+ };
1992
+ const BoolInstr bi399[] = {
1993
+ {BO_IMP,0,1,0},{BO_OR ,2,3,1},{BO_IMP,0,1,0},
1994
+ {BO_HLT,0,0,0}
1995
+ };
1996
+ const BoolInstr bi400[] = {
1997
+ {BO_IMP,0,1,0},{BO_OR ,0,2,0},{BO_IMP,0,3,0},
1998
+ {BO_HLT,0,0,0}
1999
+ };
2000
+ const BoolInstr bi401[] = {
2001
+ {BO_IMP,2,3,2},{BO_OR ,1,2,1},{BO_IMP,0,1,0},
2002
+ {BO_HLT,0,0,0}
2003
+ };
2004
+ const BoolInstr bi402[] = {
2005
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_OR ,2,3,1},
2006
+ {BO_IMP,0,1,0},
2007
+ {BO_HLT,0,0,0}
2008
+ };
2009
+ const BoolInstr bi403[] = {
2010
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2011
+ {BO_OR ,2,3,1},{BO_IMP,0,1,0},
2012
+ {BO_HLT,0,0,0}
2013
+ };
2014
+ const BoolInstr bi404[] = {
2015
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2016
+ {BO_IMP,0,1,0},
2017
+ {BO_HLT,0,0,0}
2018
+ };
2019
+ const BoolInstr bi405[] = {
2020
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2021
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
2022
+ {BO_HLT,0,0,0}
2023
+ };
2024
+ const BoolInstr bi406[] = {
2025
+ {BO_IMP,0,1,0},{BO_OR ,2,3,1},{BO_XOR,0,1,0},
2026
+ {BO_HLT,0,0,0}
2027
+ };
2028
+ const BoolInstr bi407[] = {
2029
+ {BO_IMP,0,1,0},{BO_OR ,0,2,0},{BO_XOR,0,3,0},
2030
+ {BO_HLT,0,0,0}
2031
+ };
2032
+ const BoolInstr bi408[] = {
2033
+ {BO_IMP,2,3,2},{BO_OR ,1,2,1},{BO_XOR,0,1,0},
2034
+ {BO_HLT,0,0,0}
2035
+ };
2036
+ const BoolInstr bi409[] = {
2037
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_OR ,2,3,1},
2038
+ {BO_XOR,0,1,0},
2039
+ {BO_HLT,0,0,0}
2040
+ };
2041
+ const BoolInstr bi410[] = {
2042
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2043
+ {BO_OR ,2,3,1},{BO_XOR,0,1,0},
2044
+ {BO_HLT,0,0,0}
2045
+ };
2046
+ const BoolInstr bi411[] = {
2047
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2048
+ {BO_XOR,0,1,0},
2049
+ {BO_HLT,0,0,0}
2050
+ };
2051
+ const BoolInstr bi412[] = {
2052
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2053
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
2054
+ {BO_HLT,0,0,0}
2055
+ };
2056
+ const BoolInstr bi413[] = {
2057
+ {BO_IMP,0,1,0},{BO_OR ,2,3,1},{BO_EQV,0,1,0},
2058
+ {BO_HLT,0,0,0}
2059
+ };
2060
+ const BoolInstr bi414[] = {
2061
+ {BO_IMP,0,1,0},{BO_OR ,0,2,0},{BO_EQV,0,3,0},
2062
+ {BO_HLT,0,0,0}
2063
+ };
2064
+ const BoolInstr bi415[] = {
2065
+ {BO_IMP,2,3,2},{BO_OR ,1,2,1},{BO_EQV,0,1,0},
2066
+ {BO_HLT,0,0,0}
2067
+ };
2068
+ const BoolInstr bi416[] = {
2069
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_OR ,2,3,1},
2070
+ {BO_EQV,0,1,0},
2071
+ {BO_HLT,0,0,0}
2072
+ };
2073
+ const BoolInstr bi417[] = {
2074
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2075
+ {BO_OR ,2,3,1},{BO_EQV,0,1,0},
2076
+ {BO_HLT,0,0,0}
2077
+ };
2078
+ const BoolInstr bi418[] = {
2079
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2080
+ {BO_EQV,0,1,0},
2081
+ {BO_HLT,0,0,0}
2082
+ };
2083
+ const BoolInstr bi419[] = {
2084
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2085
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
2086
+ {BO_HLT,0,0,0}
2087
+ };
2088
+ const BoolInstr bi420[] = {
2089
+ {BO_IMP,0,1,0},{BO_IMP,2,3,1},{BO_AND,0,1,0},
2090
+ {BO_HLT,0,0,0}
2091
+ };
2092
+ const BoolInstr bi421[] = {
2093
+ {BO_IMP,0,1,0},{BO_IMP,0,2,0},{BO_AND,0,3,0},
2094
+ {BO_HLT,0,0,0}
2095
+ };
2096
+ const BoolInstr bi422[] = {
2097
+ {BO_IMP,2,3,2},{BO_IMP,1,2,1},{BO_AND,0,1,0},
2098
+ {BO_HLT,0,0,0}
2099
+ };
2100
+ const BoolInstr bi423[] = {
2101
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_IMP,2,3,1},
2102
+ {BO_AND,0,1,0},
2103
+ {BO_HLT,0,0,0}
2104
+ };
2105
+ const BoolInstr bi424[] = {
2106
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2107
+ {BO_IMP,2,3,1},{BO_AND,0,1,0},
2108
+ {BO_HLT,0,0,0}
2109
+ };
2110
+ const BoolInstr bi425[] = {
2111
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2112
+ {BO_AND,0,1,0},
2113
+ {BO_HLT,0,0,0}
2114
+ };
2115
+ const BoolInstr bi426[] = {
2116
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2117
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
2118
+ {BO_HLT,0,0,0}
2119
+ };
2120
+ const BoolInstr bi427[] = {
2121
+ {BO_IMP,0,1,0},{BO_IMP,2,3,1},{BO_OR ,0,1,0},
2122
+ {BO_HLT,0,0,0}
2123
+ };
2124
+ const BoolInstr bi428[] = {
2125
+ {BO_IMP,0,1,0},{BO_IMP,0,2,0},{BO_OR ,0,3,0},
2126
+ {BO_HLT,0,0,0}
2127
+ };
2128
+ const BoolInstr bi429[] = {
2129
+ {BO_IMP,2,3,2},{BO_IMP,1,2,1},{BO_OR ,0,1,0},
2130
+ {BO_HLT,0,0,0}
2131
+ };
2132
+ const BoolInstr bi430[] = {
2133
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_IMP,2,3,1},
2134
+ {BO_OR ,0,1,0},
2135
+ {BO_HLT,0,0,0}
2136
+ };
2137
+ const BoolInstr bi431[] = {
2138
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2139
+ {BO_IMP,2,3,1},{BO_OR ,0,1,0},
2140
+ {BO_HLT,0,0,0}
2141
+ };
2142
+ const BoolInstr bi432[] = {
2143
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2144
+ {BO_OR ,0,1,0},
2145
+ {BO_HLT,0,0,0}
2146
+ };
2147
+ const BoolInstr bi433[] = {
2148
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2149
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
2150
+ {BO_HLT,0,0,0}
2151
+ };
2152
+ const BoolInstr bi434[] = {
2153
+ {BO_IMP,0,1,0},{BO_IMP,2,3,1},{BO_IMP,0,1,0},
2154
+ {BO_HLT,0,0,0}
2155
+ };
2156
+ const BoolInstr bi435[] = {
2157
+ {BO_IMP,0,1,0},{BO_IMP,0,2,0},{BO_IMP,0,3,0},
2158
+ {BO_HLT,0,0,0}
2159
+ };
2160
+ const BoolInstr bi436[] = {
2161
+ {BO_IMP,2,3,2},{BO_IMP,1,2,1},{BO_IMP,0,1,0},
2162
+ {BO_HLT,0,0,0}
2163
+ };
2164
+ const BoolInstr bi437[] = {
2165
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_IMP,2,3,1},
2166
+ {BO_IMP,0,1,0},
2167
+ {BO_HLT,0,0,0}
2168
+ };
2169
+ const BoolInstr bi438[] = {
2170
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2171
+ {BO_IMP,2,3,1},{BO_IMP,0,1,0},
2172
+ {BO_HLT,0,0,0}
2173
+ };
2174
+ const BoolInstr bi439[] = {
2175
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2176
+ {BO_IMP,0,1,0},
2177
+ {BO_HLT,0,0,0}
2178
+ };
2179
+ const BoolInstr bi440[] = {
2180
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2181
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
2182
+ {BO_HLT,0,0,0}
2183
+ };
2184
+ const BoolInstr bi441[] = {
2185
+ {BO_IMP,0,1,0},{BO_IMP,2,3,1},{BO_XOR,0,1,0},
2186
+ {BO_HLT,0,0,0}
2187
+ };
2188
+ const BoolInstr bi442[] = {
2189
+ {BO_IMP,0,1,0},{BO_IMP,0,2,0},{BO_XOR,0,3,0},
2190
+ {BO_HLT,0,0,0}
2191
+ };
2192
+ const BoolInstr bi443[] = {
2193
+ {BO_IMP,2,3,2},{BO_IMP,1,2,1},{BO_XOR,0,1,0},
2194
+ {BO_HLT,0,0,0}
2195
+ };
2196
+ const BoolInstr bi444[] = {
2197
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_IMP,2,3,1},
2198
+ {BO_XOR,0,1,0},
2199
+ {BO_HLT,0,0,0}
2200
+ };
2201
+ const BoolInstr bi445[] = {
2202
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2203
+ {BO_IMP,2,3,1},{BO_XOR,0,1,0},
2204
+ {BO_HLT,0,0,0}
2205
+ };
2206
+ const BoolInstr bi446[] = {
2207
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2208
+ {BO_XOR,0,1,0},
2209
+ {BO_HLT,0,0,0}
2210
+ };
2211
+ const BoolInstr bi447[] = {
2212
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2213
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
2214
+ {BO_HLT,0,0,0}
2215
+ };
2216
+ const BoolInstr bi448[] = {
2217
+ {BO_IMP,0,1,0},{BO_IMP,2,3,1},{BO_EQV,0,1,0},
2218
+ {BO_HLT,0,0,0}
2219
+ };
2220
+ const BoolInstr bi449[] = {
2221
+ {BO_IMP,0,1,0},{BO_IMP,0,2,0},{BO_EQV,0,3,0},
2222
+ {BO_HLT,0,0,0}
2223
+ };
2224
+ const BoolInstr bi450[] = {
2225
+ {BO_IMP,2,3,2},{BO_IMP,1,2,1},{BO_EQV,0,1,0},
2226
+ {BO_HLT,0,0,0}
2227
+ };
2228
+ const BoolInstr bi451[] = {
2229
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_IMP,2,3,1},
2230
+ {BO_EQV,0,1,0},
2231
+ {BO_HLT,0,0,0}
2232
+ };
2233
+ const BoolInstr bi452[] = {
2234
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2235
+ {BO_IMP,2,3,1},{BO_EQV,0,1,0},
2236
+ {BO_HLT,0,0,0}
2237
+ };
2238
+ const BoolInstr bi453[] = {
2239
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2240
+ {BO_EQV,0,1,0},
2241
+ {BO_HLT,0,0,0}
2242
+ };
2243
+ const BoolInstr bi454[] = {
2244
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2245
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
2246
+ {BO_HLT,0,0,0}
2247
+ };
2248
+ const BoolInstr bi455[] = {
2249
+ {BO_IMP,0,1,0},{BO_XOR,2,3,1},{BO_AND,0,1,0},
2250
+ {BO_HLT,0,0,0}
2251
+ };
2252
+ const BoolInstr bi456[] = {
2253
+ {BO_IMP,0,1,0},{BO_XOR,0,2,0},{BO_AND,0,3,0},
2254
+ {BO_HLT,0,0,0}
2255
+ };
2256
+ const BoolInstr bi457[] = {
2257
+ {BO_IMP,2,3,2},{BO_XOR,1,2,1},{BO_AND,0,1,0},
2258
+ {BO_HLT,0,0,0}
2259
+ };
2260
+ const BoolInstr bi458[] = {
2261
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_XOR,2,3,1},
2262
+ {BO_AND,0,1,0},
2263
+ {BO_HLT,0,0,0}
2264
+ };
2265
+ const BoolInstr bi459[] = {
2266
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2267
+ {BO_XOR,2,3,1},{BO_AND,0,1,0},
2268
+ {BO_HLT,0,0,0}
2269
+ };
2270
+ const BoolInstr bi460[] = {
2271
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2272
+ {BO_AND,0,1,0},
2273
+ {BO_HLT,0,0,0}
2274
+ };
2275
+ const BoolInstr bi461[] = {
2276
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2277
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
2278
+ {BO_HLT,0,0,0}
2279
+ };
2280
+ const BoolInstr bi462[] = {
2281
+ {BO_IMP,0,1,0},{BO_XOR,2,3,1},{BO_OR ,0,1,0},
2282
+ {BO_HLT,0,0,0}
2283
+ };
2284
+ const BoolInstr bi463[] = {
2285
+ {BO_IMP,0,1,0},{BO_XOR,0,2,0},{BO_OR ,0,3,0},
2286
+ {BO_HLT,0,0,0}
2287
+ };
2288
+ const BoolInstr bi464[] = {
2289
+ {BO_IMP,2,3,2},{BO_XOR,1,2,1},{BO_OR ,0,1,0},
2290
+ {BO_HLT,0,0,0}
2291
+ };
2292
+ const BoolInstr bi465[] = {
2293
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_XOR,2,3,1},
2294
+ {BO_OR ,0,1,0},
2295
+ {BO_HLT,0,0,0}
2296
+ };
2297
+ const BoolInstr bi466[] = {
2298
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2299
+ {BO_XOR,2,3,1},{BO_OR ,0,1,0},
2300
+ {BO_HLT,0,0,0}
2301
+ };
2302
+ const BoolInstr bi467[] = {
2303
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2304
+ {BO_OR ,0,1,0},
2305
+ {BO_HLT,0,0,0}
2306
+ };
2307
+ const BoolInstr bi468[] = {
2308
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2309
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
2310
+ {BO_HLT,0,0,0}
2311
+ };
2312
+ const BoolInstr bi469[] = {
2313
+ {BO_IMP,0,1,0},{BO_XOR,2,3,1},{BO_IMP,0,1,0},
2314
+ {BO_HLT,0,0,0}
2315
+ };
2316
+ const BoolInstr bi470[] = {
2317
+ {BO_IMP,0,1,0},{BO_XOR,0,2,0},{BO_IMP,0,3,0},
2318
+ {BO_HLT,0,0,0}
2319
+ };
2320
+ const BoolInstr bi471[] = {
2321
+ {BO_IMP,2,3,2},{BO_XOR,1,2,1},{BO_IMP,0,1,0},
2322
+ {BO_HLT,0,0,0}
2323
+ };
2324
+ const BoolInstr bi472[] = {
2325
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_XOR,2,3,1},
2326
+ {BO_IMP,0,1,0},
2327
+ {BO_HLT,0,0,0}
2328
+ };
2329
+ const BoolInstr bi473[] = {
2330
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2331
+ {BO_XOR,2,3,1},{BO_IMP,0,1,0},
2332
+ {BO_HLT,0,0,0}
2333
+ };
2334
+ const BoolInstr bi474[] = {
2335
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2336
+ {BO_IMP,0,1,0},
2337
+ {BO_HLT,0,0,0}
2338
+ };
2339
+ const BoolInstr bi475[] = {
2340
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2341
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
2342
+ {BO_HLT,0,0,0}
2343
+ };
2344
+ const BoolInstr bi476[] = {
2345
+ {BO_IMP,0,1,0},{BO_XOR,2,3,1},{BO_XOR,0,1,0},
2346
+ {BO_HLT,0,0,0}
2347
+ };
2348
+ const BoolInstr bi477[] = {
2349
+ {BO_IMP,0,1,0},{BO_XOR,0,2,0},{BO_XOR,0,3,0},
2350
+ {BO_HLT,0,0,0}
2351
+ };
2352
+ const BoolInstr bi478[] = {
2353
+ {BO_IMP,2,3,2},{BO_XOR,1,2,1},{BO_XOR,0,1,0},
2354
+ {BO_HLT,0,0,0}
2355
+ };
2356
+ const BoolInstr bi479[] = {
2357
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_XOR,2,3,1},
2358
+ {BO_XOR,0,1,0},
2359
+ {BO_HLT,0,0,0}
2360
+ };
2361
+ const BoolInstr bi480[] = {
2362
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2363
+ {BO_XOR,2,3,1},{BO_XOR,0,1,0},
2364
+ {BO_HLT,0,0,0}
2365
+ };
2366
+ const BoolInstr bi481[] = {
2367
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2368
+ {BO_XOR,0,1,0},
2369
+ {BO_HLT,0,0,0}
2370
+ };
2371
+ const BoolInstr bi482[] = {
2372
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2373
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
2374
+ {BO_HLT,0,0,0}
2375
+ };
2376
+ const BoolInstr bi483[] = {
2377
+ {BO_IMP,0,1,0},{BO_XOR,2,3,1},{BO_EQV,0,1,0},
2378
+ {BO_HLT,0,0,0}
2379
+ };
2380
+ const BoolInstr bi484[] = {
2381
+ {BO_IMP,0,1,0},{BO_XOR,0,2,0},{BO_EQV,0,3,0},
2382
+ {BO_HLT,0,0,0}
2383
+ };
2384
+ const BoolInstr bi485[] = {
2385
+ {BO_IMP,2,3,2},{BO_XOR,1,2,1},{BO_EQV,0,1,0},
2386
+ {BO_HLT,0,0,0}
2387
+ };
2388
+ const BoolInstr bi486[] = {
2389
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_XOR,2,3,1},
2390
+ {BO_EQV,0,1,0},
2391
+ {BO_HLT,0,0,0}
2392
+ };
2393
+ const BoolInstr bi487[] = {
2394
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2395
+ {BO_XOR,2,3,1},{BO_EQV,0,1,0},
2396
+ {BO_HLT,0,0,0}
2397
+ };
2398
+ const BoolInstr bi488[] = {
2399
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2400
+ {BO_EQV,0,1,0},
2401
+ {BO_HLT,0,0,0}
2402
+ };
2403
+ const BoolInstr bi489[] = {
2404
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
2405
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
2406
+ {BO_HLT,0,0,0}
2407
+ };
2408
+ const BoolInstr bi490[] = {
2409
+ {BO_IMP,0,1,0},{BO_EQV,2,3,1},{BO_AND,0,1,0},
2410
+ {BO_HLT,0,0,0}
2411
+ };
2412
+ const BoolInstr bi491[] = {
2413
+ {BO_IMP,0,1,0},{BO_EQV,0,2,0},{BO_AND,0,3,0},
2414
+ {BO_HLT,0,0,0}
2415
+ };
2416
+ const BoolInstr bi492[] = {
2417
+ {BO_IMP,2,3,2},{BO_EQV,1,2,1},{BO_AND,0,1,0},
2418
+ {BO_HLT,0,0,0}
2419
+ };
2420
+ const BoolInstr bi493[] = {
2421
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_EQV,2,3,1},
2422
+ {BO_AND,0,1,0},
2423
+ {BO_HLT,0,0,0}
2424
+ };
2425
+ const BoolInstr bi494[] = {
2426
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2427
+ {BO_EQV,2,3,1},{BO_AND,0,1,0},
2428
+ {BO_HLT,0,0,0}
2429
+ };
2430
+ const BoolInstr bi495[] = {
2431
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2432
+ {BO_AND,0,1,0},
2433
+ {BO_HLT,0,0,0}
2434
+ };
2435
+ const BoolInstr bi496[] = {
2436
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2437
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
2438
+ {BO_HLT,0,0,0}
2439
+ };
2440
+ const BoolInstr bi497[] = {
2441
+ {BO_IMP,0,1,0},{BO_EQV,2,3,1},{BO_OR ,0,1,0},
2442
+ {BO_HLT,0,0,0}
2443
+ };
2444
+ const BoolInstr bi498[] = {
2445
+ {BO_IMP,0,1,0},{BO_EQV,0,2,0},{BO_OR ,0,3,0},
2446
+ {BO_HLT,0,0,0}
2447
+ };
2448
+ const BoolInstr bi499[] = {
2449
+ {BO_IMP,2,3,2},{BO_EQV,1,2,1},{BO_OR ,0,1,0},
2450
+ {BO_HLT,0,0,0}
2451
+ };
2452
+ const BoolInstr bi500[] = {
2453
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_EQV,2,3,1},
2454
+ {BO_OR ,0,1,0},
2455
+ {BO_HLT,0,0,0}
2456
+ };
2457
+ const BoolInstr bi501[] = {
2458
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2459
+ {BO_EQV,2,3,1},{BO_OR ,0,1,0},
2460
+ {BO_HLT,0,0,0}
2461
+ };
2462
+ const BoolInstr bi502[] = {
2463
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2464
+ {BO_OR ,0,1,0},
2465
+ {BO_HLT,0,0,0}
2466
+ };
2467
+ const BoolInstr bi503[] = {
2468
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2469
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
2470
+ {BO_HLT,0,0,0}
2471
+ };
2472
+ const BoolInstr bi504[] = {
2473
+ {BO_IMP,0,1,0},{BO_EQV,2,3,1},{BO_IMP,0,1,0},
2474
+ {BO_HLT,0,0,0}
2475
+ };
2476
+ const BoolInstr bi505[] = {
2477
+ {BO_IMP,0,1,0},{BO_EQV,0,2,0},{BO_IMP,0,3,0},
2478
+ {BO_HLT,0,0,0}
2479
+ };
2480
+ const BoolInstr bi506[] = {
2481
+ {BO_IMP,2,3,2},{BO_EQV,1,2,1},{BO_IMP,0,1,0},
2482
+ {BO_HLT,0,0,0}
2483
+ };
2484
+ const BoolInstr bi507[] = {
2485
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_EQV,2,3,1},
2486
+ {BO_IMP,0,1,0},
2487
+ {BO_HLT,0,0,0}
2488
+ };
2489
+ const BoolInstr bi508[] = {
2490
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2491
+ {BO_EQV,2,3,1},{BO_IMP,0,1,0},
2492
+ {BO_HLT,0,0,0}
2493
+ };
2494
+ const BoolInstr bi509[] = {
2495
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2496
+ {BO_IMP,0,1,0},
2497
+ {BO_HLT,0,0,0}
2498
+ };
2499
+ const BoolInstr bi510[] = {
2500
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2501
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
2502
+ {BO_HLT,0,0,0}
2503
+ };
2504
+ const BoolInstr bi511[] = {
2505
+ {BO_IMP,0,1,0},{BO_EQV,2,3,1},{BO_XOR,0,1,0},
2506
+ {BO_HLT,0,0,0}
2507
+ };
2508
+ const BoolInstr bi512[] = {
2509
+ {BO_IMP,0,1,0},{BO_EQV,0,2,0},{BO_XOR,0,3,0},
2510
+ {BO_HLT,0,0,0}
2511
+ };
2512
+ const BoolInstr bi513[] = {
2513
+ {BO_IMP,2,3,2},{BO_EQV,1,2,1},{BO_XOR,0,1,0},
2514
+ {BO_HLT,0,0,0}
2515
+ };
2516
+ const BoolInstr bi514[] = {
2517
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_EQV,2,3,1},
2518
+ {BO_XOR,0,1,0},
2519
+ {BO_HLT,0,0,0}
2520
+ };
2521
+ const BoolInstr bi515[] = {
2522
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2523
+ {BO_EQV,2,3,1},{BO_XOR,0,1,0},
2524
+ {BO_HLT,0,0,0}
2525
+ };
2526
+ const BoolInstr bi516[] = {
2527
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2528
+ {BO_XOR,0,1,0},
2529
+ {BO_HLT,0,0,0}
2530
+ };
2531
+ const BoolInstr bi517[] = {
2532
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2533
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
2534
+ {BO_HLT,0,0,0}
2535
+ };
2536
+ const BoolInstr bi518[] = {
2537
+ {BO_IMP,0,1,0},{BO_EQV,2,3,1},{BO_EQV,0,1,0},
2538
+ {BO_HLT,0,0,0}
2539
+ };
2540
+ const BoolInstr bi519[] = {
2541
+ {BO_IMP,0,1,0},{BO_EQV,0,2,0},{BO_EQV,0,3,0},
2542
+ {BO_HLT,0,0,0}
2543
+ };
2544
+ const BoolInstr bi520[] = {
2545
+ {BO_IMP,2,3,2},{BO_EQV,1,2,1},{BO_EQV,0,1,0},
2546
+ {BO_HLT,0,0,0}
2547
+ };
2548
+ const BoolInstr bi521[] = {
2549
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_IMP,0,1,0},{BO_EQV,2,3,1},
2550
+ {BO_EQV,0,1,0},
2551
+ {BO_HLT,0,0,0}
2552
+ };
2553
+ const BoolInstr bi522[] = {
2554
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_IMP,0,1,0},
2555
+ {BO_EQV,2,3,1},{BO_EQV,0,1,0},
2556
+ {BO_HLT,0,0,0}
2557
+ };
2558
+ const BoolInstr bi523[] = {
2559
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2560
+ {BO_EQV,0,1,0},
2561
+ {BO_HLT,0,0,0}
2562
+ };
2563
+ const BoolInstr bi524[] = {
2564
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
2565
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
2566
+ {BO_HLT,0,0,0}
2567
+ };
2568
+ const BoolInstr bi525[] = {
2569
+ {BO_XOR,0,1,0},{BO_AND,2,3,1},{BO_AND,0,1,0},
2570
+ {BO_HLT,0,0,0}
2571
+ };
2572
+ const BoolInstr bi526[] = {
2573
+ {BO_XOR,0,1,0},{BO_AND,0,2,0},{BO_AND,0,3,0},
2574
+ {BO_HLT,0,0,0}
2575
+ };
2576
+ const BoolInstr bi527[] = {
2577
+ {BO_XOR,2,3,2},{BO_AND,1,2,1},{BO_AND,0,1,0},
2578
+ {BO_HLT,0,0,0}
2579
+ };
2580
+ const BoolInstr bi528[] = {
2581
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_AND,2,3,1},
2582
+ {BO_AND,0,1,0},
2583
+ {BO_HLT,0,0,0}
2584
+ };
2585
+ const BoolInstr bi529[] = {
2586
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2587
+ {BO_AND,2,3,1},{BO_AND,0,1,0},
2588
+ {BO_HLT,0,0,0}
2589
+ };
2590
+ const BoolInstr bi530[] = {
2591
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2592
+ {BO_AND,0,1,0},
2593
+ {BO_HLT,0,0,0}
2594
+ };
2595
+ const BoolInstr bi531[] = {
2596
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2597
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
2598
+ {BO_HLT,0,0,0}
2599
+ };
2600
+ const BoolInstr bi532[] = {
2601
+ {BO_XOR,0,1,0},{BO_AND,2,3,1},{BO_OR ,0,1,0},
2602
+ {BO_HLT,0,0,0}
2603
+ };
2604
+ const BoolInstr bi533[] = {
2605
+ {BO_XOR,0,1,0},{BO_AND,0,2,0},{BO_OR ,0,3,0},
2606
+ {BO_HLT,0,0,0}
2607
+ };
2608
+ const BoolInstr bi534[] = {
2609
+ {BO_XOR,2,3,2},{BO_AND,1,2,1},{BO_OR ,0,1,0},
2610
+ {BO_HLT,0,0,0}
2611
+ };
2612
+ const BoolInstr bi535[] = {
2613
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_AND,2,3,1},
2614
+ {BO_OR ,0,1,0},
2615
+ {BO_HLT,0,0,0}
2616
+ };
2617
+ const BoolInstr bi536[] = {
2618
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2619
+ {BO_AND,2,3,1},{BO_OR ,0,1,0},
2620
+ {BO_HLT,0,0,0}
2621
+ };
2622
+ const BoolInstr bi537[] = {
2623
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2624
+ {BO_OR ,0,1,0},
2625
+ {BO_HLT,0,0,0}
2626
+ };
2627
+ const BoolInstr bi538[] = {
2628
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2629
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
2630
+ {BO_HLT,0,0,0}
2631
+ };
2632
+ const BoolInstr bi539[] = {
2633
+ {BO_XOR,0,1,0},{BO_AND,2,3,1},{BO_IMP,0,1,0},
2634
+ {BO_HLT,0,0,0}
2635
+ };
2636
+ const BoolInstr bi540[] = {
2637
+ {BO_XOR,0,1,0},{BO_AND,0,2,0},{BO_IMP,0,3,0},
2638
+ {BO_HLT,0,0,0}
2639
+ };
2640
+ const BoolInstr bi541[] = {
2641
+ {BO_XOR,2,3,2},{BO_AND,1,2,1},{BO_IMP,0,1,0},
2642
+ {BO_HLT,0,0,0}
2643
+ };
2644
+ const BoolInstr bi542[] = {
2645
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_AND,2,3,1},
2646
+ {BO_IMP,0,1,0},
2647
+ {BO_HLT,0,0,0}
2648
+ };
2649
+ const BoolInstr bi543[] = {
2650
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2651
+ {BO_AND,2,3,1},{BO_IMP,0,1,0},
2652
+ {BO_HLT,0,0,0}
2653
+ };
2654
+ const BoolInstr bi544[] = {
2655
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2656
+ {BO_IMP,0,1,0},
2657
+ {BO_HLT,0,0,0}
2658
+ };
2659
+ const BoolInstr bi545[] = {
2660
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2661
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
2662
+ {BO_HLT,0,0,0}
2663
+ };
2664
+ const BoolInstr bi546[] = {
2665
+ {BO_XOR,0,1,0},{BO_AND,2,3,1},{BO_XOR,0,1,0},
2666
+ {BO_HLT,0,0,0}
2667
+ };
2668
+ const BoolInstr bi547[] = {
2669
+ {BO_XOR,0,1,0},{BO_AND,0,2,0},{BO_XOR,0,3,0},
2670
+ {BO_HLT,0,0,0}
2671
+ };
2672
+ const BoolInstr bi548[] = {
2673
+ {BO_XOR,2,3,2},{BO_AND,1,2,1},{BO_XOR,0,1,0},
2674
+ {BO_HLT,0,0,0}
2675
+ };
2676
+ const BoolInstr bi549[] = {
2677
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_AND,2,3,1},
2678
+ {BO_XOR,0,1,0},
2679
+ {BO_HLT,0,0,0}
2680
+ };
2681
+ const BoolInstr bi550[] = {
2682
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2683
+ {BO_AND,2,3,1},{BO_XOR,0,1,0},
2684
+ {BO_HLT,0,0,0}
2685
+ };
2686
+ const BoolInstr bi551[] = {
2687
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2688
+ {BO_XOR,0,1,0},
2689
+ {BO_HLT,0,0,0}
2690
+ };
2691
+ const BoolInstr bi552[] = {
2692
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2693
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
2694
+ {BO_HLT,0,0,0}
2695
+ };
2696
+ const BoolInstr bi553[] = {
2697
+ {BO_XOR,0,1,0},{BO_AND,2,3,1},{BO_EQV,0,1,0},
2698
+ {BO_HLT,0,0,0}
2699
+ };
2700
+ const BoolInstr bi554[] = {
2701
+ {BO_XOR,0,1,0},{BO_AND,0,2,0},{BO_EQV,0,3,0},
2702
+ {BO_HLT,0,0,0}
2703
+ };
2704
+ const BoolInstr bi555[] = {
2705
+ {BO_XOR,2,3,2},{BO_AND,1,2,1},{BO_EQV,0,1,0},
2706
+ {BO_HLT,0,0,0}
2707
+ };
2708
+ const BoolInstr bi556[] = {
2709
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_AND,2,3,1},
2710
+ {BO_EQV,0,1,0},
2711
+ {BO_HLT,0,0,0}
2712
+ };
2713
+ const BoolInstr bi557[] = {
2714
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2715
+ {BO_AND,2,3,1},{BO_EQV,0,1,0},
2716
+ {BO_HLT,0,0,0}
2717
+ };
2718
+ const BoolInstr bi558[] = {
2719
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2720
+ {BO_EQV,0,1,0},
2721
+ {BO_HLT,0,0,0}
2722
+ };
2723
+ const BoolInstr bi559[] = {
2724
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
2725
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
2726
+ {BO_HLT,0,0,0}
2727
+ };
2728
+ const BoolInstr bi560[] = {
2729
+ {BO_XOR,0,1,0},{BO_OR ,2,3,1},{BO_AND,0,1,0},
2730
+ {BO_HLT,0,0,0}
2731
+ };
2732
+ const BoolInstr bi561[] = {
2733
+ {BO_XOR,0,1,0},{BO_OR ,0,2,0},{BO_AND,0,3,0},
2734
+ {BO_HLT,0,0,0}
2735
+ };
2736
+ const BoolInstr bi562[] = {
2737
+ {BO_XOR,2,3,2},{BO_OR ,1,2,1},{BO_AND,0,1,0},
2738
+ {BO_HLT,0,0,0}
2739
+ };
2740
+ const BoolInstr bi563[] = {
2741
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_OR ,2,3,1},
2742
+ {BO_AND,0,1,0},
2743
+ {BO_HLT,0,0,0}
2744
+ };
2745
+ const BoolInstr bi564[] = {
2746
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2747
+ {BO_OR ,2,3,1},{BO_AND,0,1,0},
2748
+ {BO_HLT,0,0,0}
2749
+ };
2750
+ const BoolInstr bi565[] = {
2751
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2752
+ {BO_AND,0,1,0},
2753
+ {BO_HLT,0,0,0}
2754
+ };
2755
+ const BoolInstr bi566[] = {
2756
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2757
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
2758
+ {BO_HLT,0,0,0}
2759
+ };
2760
+ const BoolInstr bi567[] = {
2761
+ {BO_XOR,0,1,0},{BO_OR ,2,3,1},{BO_OR ,0,1,0},
2762
+ {BO_HLT,0,0,0}
2763
+ };
2764
+ const BoolInstr bi568[] = {
2765
+ {BO_XOR,0,1,0},{BO_OR ,0,2,0},{BO_OR ,0,3,0},
2766
+ {BO_HLT,0,0,0}
2767
+ };
2768
+ const BoolInstr bi569[] = {
2769
+ {BO_XOR,2,3,2},{BO_OR ,1,2,1},{BO_OR ,0,1,0},
2770
+ {BO_HLT,0,0,0}
2771
+ };
2772
+ const BoolInstr bi570[] = {
2773
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_OR ,2,3,1},
2774
+ {BO_OR ,0,1,0},
2775
+ {BO_HLT,0,0,0}
2776
+ };
2777
+ const BoolInstr bi571[] = {
2778
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2779
+ {BO_OR ,2,3,1},{BO_OR ,0,1,0},
2780
+ {BO_HLT,0,0,0}
2781
+ };
2782
+ const BoolInstr bi572[] = {
2783
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2784
+ {BO_OR ,0,1,0},
2785
+ {BO_HLT,0,0,0}
2786
+ };
2787
+ const BoolInstr bi573[] = {
2788
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2789
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
2790
+ {BO_HLT,0,0,0}
2791
+ };
2792
+ const BoolInstr bi574[] = {
2793
+ {BO_XOR,0,1,0},{BO_OR ,2,3,1},{BO_IMP,0,1,0},
2794
+ {BO_HLT,0,0,0}
2795
+ };
2796
+ const BoolInstr bi575[] = {
2797
+ {BO_XOR,0,1,0},{BO_OR ,0,2,0},{BO_IMP,0,3,0},
2798
+ {BO_HLT,0,0,0}
2799
+ };
2800
+ const BoolInstr bi576[] = {
2801
+ {BO_XOR,2,3,2},{BO_OR ,1,2,1},{BO_IMP,0,1,0},
2802
+ {BO_HLT,0,0,0}
2803
+ };
2804
+ const BoolInstr bi577[] = {
2805
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_OR ,2,3,1},
2806
+ {BO_IMP,0,1,0},
2807
+ {BO_HLT,0,0,0}
2808
+ };
2809
+ const BoolInstr bi578[] = {
2810
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2811
+ {BO_OR ,2,3,1},{BO_IMP,0,1,0},
2812
+ {BO_HLT,0,0,0}
2813
+ };
2814
+ const BoolInstr bi579[] = {
2815
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2816
+ {BO_IMP,0,1,0},
2817
+ {BO_HLT,0,0,0}
2818
+ };
2819
+ const BoolInstr bi580[] = {
2820
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2821
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
2822
+ {BO_HLT,0,0,0}
2823
+ };
2824
+ const BoolInstr bi581[] = {
2825
+ {BO_XOR,0,1,0},{BO_OR ,2,3,1},{BO_XOR,0,1,0},
2826
+ {BO_HLT,0,0,0}
2827
+ };
2828
+ const BoolInstr bi582[] = {
2829
+ {BO_XOR,0,1,0},{BO_OR ,0,2,0},{BO_XOR,0,3,0},
2830
+ {BO_HLT,0,0,0}
2831
+ };
2832
+ const BoolInstr bi583[] = {
2833
+ {BO_XOR,2,3,2},{BO_OR ,1,2,1},{BO_XOR,0,1,0},
2834
+ {BO_HLT,0,0,0}
2835
+ };
2836
+ const BoolInstr bi584[] = {
2837
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_OR ,2,3,1},
2838
+ {BO_XOR,0,1,0},
2839
+ {BO_HLT,0,0,0}
2840
+ };
2841
+ const BoolInstr bi585[] = {
2842
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2843
+ {BO_OR ,2,3,1},{BO_XOR,0,1,0},
2844
+ {BO_HLT,0,0,0}
2845
+ };
2846
+ const BoolInstr bi586[] = {
2847
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2848
+ {BO_XOR,0,1,0},
2849
+ {BO_HLT,0,0,0}
2850
+ };
2851
+ const BoolInstr bi587[] = {
2852
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2853
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
2854
+ {BO_HLT,0,0,0}
2855
+ };
2856
+ const BoolInstr bi588[] = {
2857
+ {BO_XOR,0,1,0},{BO_OR ,2,3,1},{BO_EQV,0,1,0},
2858
+ {BO_HLT,0,0,0}
2859
+ };
2860
+ const BoolInstr bi589[] = {
2861
+ {BO_XOR,0,1,0},{BO_OR ,0,2,0},{BO_EQV,0,3,0},
2862
+ {BO_HLT,0,0,0}
2863
+ };
2864
+ const BoolInstr bi590[] = {
2865
+ {BO_XOR,2,3,2},{BO_OR ,1,2,1},{BO_EQV,0,1,0},
2866
+ {BO_HLT,0,0,0}
2867
+ };
2868
+ const BoolInstr bi591[] = {
2869
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_OR ,2,3,1},
2870
+ {BO_EQV,0,1,0},
2871
+ {BO_HLT,0,0,0}
2872
+ };
2873
+ const BoolInstr bi592[] = {
2874
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2875
+ {BO_OR ,2,3,1},{BO_EQV,0,1,0},
2876
+ {BO_HLT,0,0,0}
2877
+ };
2878
+ const BoolInstr bi593[] = {
2879
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2880
+ {BO_EQV,0,1,0},
2881
+ {BO_HLT,0,0,0}
2882
+ };
2883
+ const BoolInstr bi594[] = {
2884
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
2885
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
2886
+ {BO_HLT,0,0,0}
2887
+ };
2888
+ const BoolInstr bi595[] = {
2889
+ {BO_XOR,0,1,0},{BO_IMP,2,3,1},{BO_AND,0,1,0},
2890
+ {BO_HLT,0,0,0}
2891
+ };
2892
+ const BoolInstr bi596[] = {
2893
+ {BO_XOR,0,1,0},{BO_IMP,0,2,0},{BO_AND,0,3,0},
2894
+ {BO_HLT,0,0,0}
2895
+ };
2896
+ const BoolInstr bi597[] = {
2897
+ {BO_XOR,2,3,2},{BO_IMP,1,2,1},{BO_AND,0,1,0},
2898
+ {BO_HLT,0,0,0}
2899
+ };
2900
+ const BoolInstr bi598[] = {
2901
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_IMP,2,3,1},
2902
+ {BO_AND,0,1,0},
2903
+ {BO_HLT,0,0,0}
2904
+ };
2905
+ const BoolInstr bi599[] = {
2906
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2907
+ {BO_IMP,2,3,1},{BO_AND,0,1,0},
2908
+ {BO_HLT,0,0,0}
2909
+ };
2910
+ const BoolInstr bi600[] = {
2911
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2912
+ {BO_AND,0,1,0},
2913
+ {BO_HLT,0,0,0}
2914
+ };
2915
+ const BoolInstr bi601[] = {
2916
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2917
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
2918
+ {BO_HLT,0,0,0}
2919
+ };
2920
+ const BoolInstr bi602[] = {
2921
+ {BO_XOR,0,1,0},{BO_IMP,2,3,1},{BO_OR ,0,1,0},
2922
+ {BO_HLT,0,0,0}
2923
+ };
2924
+ const BoolInstr bi603[] = {
2925
+ {BO_XOR,0,1,0},{BO_IMP,0,2,0},{BO_OR ,0,3,0},
2926
+ {BO_HLT,0,0,0}
2927
+ };
2928
+ const BoolInstr bi604[] = {
2929
+ {BO_XOR,2,3,2},{BO_IMP,1,2,1},{BO_OR ,0,1,0},
2930
+ {BO_HLT,0,0,0}
2931
+ };
2932
+ const BoolInstr bi605[] = {
2933
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_IMP,2,3,1},
2934
+ {BO_OR ,0,1,0},
2935
+ {BO_HLT,0,0,0}
2936
+ };
2937
+ const BoolInstr bi606[] = {
2938
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2939
+ {BO_IMP,2,3,1},{BO_OR ,0,1,0},
2940
+ {BO_HLT,0,0,0}
2941
+ };
2942
+ const BoolInstr bi607[] = {
2943
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2944
+ {BO_OR ,0,1,0},
2945
+ {BO_HLT,0,0,0}
2946
+ };
2947
+ const BoolInstr bi608[] = {
2948
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2949
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
2950
+ {BO_HLT,0,0,0}
2951
+ };
2952
+ const BoolInstr bi609[] = {
2953
+ {BO_XOR,0,1,0},{BO_IMP,2,3,1},{BO_IMP,0,1,0},
2954
+ {BO_HLT,0,0,0}
2955
+ };
2956
+ const BoolInstr bi610[] = {
2957
+ {BO_XOR,0,1,0},{BO_IMP,0,2,0},{BO_IMP,0,3,0},
2958
+ {BO_HLT,0,0,0}
2959
+ };
2960
+ const BoolInstr bi611[] = {
2961
+ {BO_XOR,2,3,2},{BO_IMP,1,2,1},{BO_IMP,0,1,0},
2962
+ {BO_HLT,0,0,0}
2963
+ };
2964
+ const BoolInstr bi612[] = {
2965
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_IMP,2,3,1},
2966
+ {BO_IMP,0,1,0},
2967
+ {BO_HLT,0,0,0}
2968
+ };
2969
+ const BoolInstr bi613[] = {
2970
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
2971
+ {BO_IMP,2,3,1},{BO_IMP,0,1,0},
2972
+ {BO_HLT,0,0,0}
2973
+ };
2974
+ const BoolInstr bi614[] = {
2975
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2976
+ {BO_IMP,0,1,0},
2977
+ {BO_HLT,0,0,0}
2978
+ };
2979
+ const BoolInstr bi615[] = {
2980
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
2981
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
2982
+ {BO_HLT,0,0,0}
2983
+ };
2984
+ const BoolInstr bi616[] = {
2985
+ {BO_XOR,0,1,0},{BO_IMP,2,3,1},{BO_XOR,0,1,0},
2986
+ {BO_HLT,0,0,0}
2987
+ };
2988
+ const BoolInstr bi617[] = {
2989
+ {BO_XOR,0,1,0},{BO_IMP,0,2,0},{BO_XOR,0,3,0},
2990
+ {BO_HLT,0,0,0}
2991
+ };
2992
+ const BoolInstr bi618[] = {
2993
+ {BO_XOR,2,3,2},{BO_IMP,1,2,1},{BO_XOR,0,1,0},
2994
+ {BO_HLT,0,0,0}
2995
+ };
2996
+ const BoolInstr bi619[] = {
2997
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_IMP,2,3,1},
2998
+ {BO_XOR,0,1,0},
2999
+ {BO_HLT,0,0,0}
3000
+ };
3001
+ const BoolInstr bi620[] = {
3002
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3003
+ {BO_IMP,2,3,1},{BO_XOR,0,1,0},
3004
+ {BO_HLT,0,0,0}
3005
+ };
3006
+ const BoolInstr bi621[] = {
3007
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3008
+ {BO_XOR,0,1,0},
3009
+ {BO_HLT,0,0,0}
3010
+ };
3011
+ const BoolInstr bi622[] = {
3012
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3013
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
3014
+ {BO_HLT,0,0,0}
3015
+ };
3016
+ const BoolInstr bi623[] = {
3017
+ {BO_XOR,0,1,0},{BO_IMP,2,3,1},{BO_EQV,0,1,0},
3018
+ {BO_HLT,0,0,0}
3019
+ };
3020
+ const BoolInstr bi624[] = {
3021
+ {BO_XOR,0,1,0},{BO_IMP,0,2,0},{BO_EQV,0,3,0},
3022
+ {BO_HLT,0,0,0}
3023
+ };
3024
+ const BoolInstr bi625[] = {
3025
+ {BO_XOR,2,3,2},{BO_IMP,1,2,1},{BO_EQV,0,1,0},
3026
+ {BO_HLT,0,0,0}
3027
+ };
3028
+ const BoolInstr bi626[] = {
3029
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_IMP,2,3,1},
3030
+ {BO_EQV,0,1,0},
3031
+ {BO_HLT,0,0,0}
3032
+ };
3033
+ const BoolInstr bi627[] = {
3034
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3035
+ {BO_IMP,2,3,1},{BO_EQV,0,1,0},
3036
+ {BO_HLT,0,0,0}
3037
+ };
3038
+ const BoolInstr bi628[] = {
3039
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3040
+ {BO_EQV,0,1,0},
3041
+ {BO_HLT,0,0,0}
3042
+ };
3043
+ const BoolInstr bi629[] = {
3044
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3045
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
3046
+ {BO_HLT,0,0,0}
3047
+ };
3048
+ const BoolInstr bi630[] = {
3049
+ {BO_XOR,0,1,0},{BO_XOR,2,3,1},{BO_AND,0,1,0},
3050
+ {BO_HLT,0,0,0}
3051
+ };
3052
+ const BoolInstr bi631[] = {
3053
+ {BO_XOR,0,1,0},{BO_XOR,0,2,0},{BO_AND,0,3,0},
3054
+ {BO_HLT,0,0,0}
3055
+ };
3056
+ const BoolInstr bi632[] = {
3057
+ {BO_XOR,2,3,2},{BO_XOR,1,2,1},{BO_AND,0,1,0},
3058
+ {BO_HLT,0,0,0}
3059
+ };
3060
+ const BoolInstr bi633[] = {
3061
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_XOR,2,3,1},
3062
+ {BO_AND,0,1,0},
3063
+ {BO_HLT,0,0,0}
3064
+ };
3065
+ const BoolInstr bi634[] = {
3066
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3067
+ {BO_XOR,2,3,1},{BO_AND,0,1,0},
3068
+ {BO_HLT,0,0,0}
3069
+ };
3070
+ const BoolInstr bi635[] = {
3071
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3072
+ {BO_AND,0,1,0},
3073
+ {BO_HLT,0,0,0}
3074
+ };
3075
+ const BoolInstr bi636[] = {
3076
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3077
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
3078
+ {BO_HLT,0,0,0}
3079
+ };
3080
+ const BoolInstr bi637[] = {
3081
+ {BO_XOR,0,1,0},{BO_XOR,2,3,1},{BO_OR ,0,1,0},
3082
+ {BO_HLT,0,0,0}
3083
+ };
3084
+ const BoolInstr bi638[] = {
3085
+ {BO_XOR,0,1,0},{BO_XOR,0,2,0},{BO_OR ,0,3,0},
3086
+ {BO_HLT,0,0,0}
3087
+ };
3088
+ const BoolInstr bi639[] = {
3089
+ {BO_XOR,2,3,2},{BO_XOR,1,2,1},{BO_OR ,0,1,0},
3090
+ {BO_HLT,0,0,0}
3091
+ };
3092
+ const BoolInstr bi640[] = {
3093
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_XOR,2,3,1},
3094
+ {BO_OR ,0,1,0},
3095
+ {BO_HLT,0,0,0}
3096
+ };
3097
+ const BoolInstr bi641[] = {
3098
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3099
+ {BO_XOR,2,3,1},{BO_OR ,0,1,0},
3100
+ {BO_HLT,0,0,0}
3101
+ };
3102
+ const BoolInstr bi642[] = {
3103
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3104
+ {BO_OR ,0,1,0},
3105
+ {BO_HLT,0,0,0}
3106
+ };
3107
+ const BoolInstr bi643[] = {
3108
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3109
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
3110
+ {BO_HLT,0,0,0}
3111
+ };
3112
+ const BoolInstr bi644[] = {
3113
+ {BO_XOR,0,1,0},{BO_XOR,2,3,1},{BO_IMP,0,1,0},
3114
+ {BO_HLT,0,0,0}
3115
+ };
3116
+ const BoolInstr bi645[] = {
3117
+ {BO_XOR,0,1,0},{BO_XOR,0,2,0},{BO_IMP,0,3,0},
3118
+ {BO_HLT,0,0,0}
3119
+ };
3120
+ const BoolInstr bi646[] = {
3121
+ {BO_XOR,2,3,2},{BO_XOR,1,2,1},{BO_IMP,0,1,0},
3122
+ {BO_HLT,0,0,0}
3123
+ };
3124
+ const BoolInstr bi647[] = {
3125
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_XOR,2,3,1},
3126
+ {BO_IMP,0,1,0},
3127
+ {BO_HLT,0,0,0}
3128
+ };
3129
+ const BoolInstr bi648[] = {
3130
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3131
+ {BO_XOR,2,3,1},{BO_IMP,0,1,0},
3132
+ {BO_HLT,0,0,0}
3133
+ };
3134
+ const BoolInstr bi649[] = {
3135
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3136
+ {BO_IMP,0,1,0},
3137
+ {BO_HLT,0,0,0}
3138
+ };
3139
+ const BoolInstr bi650[] = {
3140
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3141
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
3142
+ {BO_HLT,0,0,0}
3143
+ };
3144
+ const BoolInstr bi651[] = {
3145
+ {BO_XOR,0,1,0},{BO_XOR,2,3,1},{BO_XOR,0,1,0},
3146
+ {BO_HLT,0,0,0}
3147
+ };
3148
+ const BoolInstr bi652[] = {
3149
+ {BO_XOR,0,1,0},{BO_XOR,0,2,0},{BO_XOR,0,3,0},
3150
+ {BO_HLT,0,0,0}
3151
+ };
3152
+ const BoolInstr bi653[] = {
3153
+ {BO_XOR,2,3,2},{BO_XOR,1,2,1},{BO_XOR,0,1,0},
3154
+ {BO_HLT,0,0,0}
3155
+ };
3156
+ const BoolInstr bi654[] = {
3157
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_XOR,2,3,1},
3158
+ {BO_XOR,0,1,0},
3159
+ {BO_HLT,0,0,0}
3160
+ };
3161
+ const BoolInstr bi655[] = {
3162
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3163
+ {BO_XOR,2,3,1},{BO_XOR,0,1,0},
3164
+ {BO_HLT,0,0,0}
3165
+ };
3166
+ const BoolInstr bi656[] = {
3167
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3168
+ {BO_XOR,0,1,0},
3169
+ {BO_HLT,0,0,0}
3170
+ };
3171
+ const BoolInstr bi657[] = {
3172
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3173
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
3174
+ {BO_HLT,0,0,0}
3175
+ };
3176
+ const BoolInstr bi658[] = {
3177
+ {BO_XOR,0,1,0},{BO_XOR,2,3,1},{BO_EQV,0,1,0},
3178
+ {BO_HLT,0,0,0}
3179
+ };
3180
+ const BoolInstr bi659[] = {
3181
+ {BO_XOR,0,1,0},{BO_XOR,0,2,0},{BO_EQV,0,3,0},
3182
+ {BO_HLT,0,0,0}
3183
+ };
3184
+ const BoolInstr bi660[] = {
3185
+ {BO_XOR,2,3,2},{BO_XOR,1,2,1},{BO_EQV,0,1,0},
3186
+ {BO_HLT,0,0,0}
3187
+ };
3188
+ const BoolInstr bi661[] = {
3189
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_XOR,2,3,1},
3190
+ {BO_EQV,0,1,0},
3191
+ {BO_HLT,0,0,0}
3192
+ };
3193
+ const BoolInstr bi662[] = {
3194
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3195
+ {BO_XOR,2,3,1},{BO_EQV,0,1,0},
3196
+ {BO_HLT,0,0,0}
3197
+ };
3198
+ const BoolInstr bi663[] = {
3199
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3200
+ {BO_EQV,0,1,0},
3201
+ {BO_HLT,0,0,0}
3202
+ };
3203
+ const BoolInstr bi664[] = {
3204
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3205
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
3206
+ {BO_HLT,0,0,0}
3207
+ };
3208
+ const BoolInstr bi665[] = {
3209
+ {BO_XOR,0,1,0},{BO_EQV,2,3,1},{BO_AND,0,1,0},
3210
+ {BO_HLT,0,0,0}
3211
+ };
3212
+ const BoolInstr bi666[] = {
3213
+ {BO_XOR,0,1,0},{BO_EQV,0,2,0},{BO_AND,0,3,0},
3214
+ {BO_HLT,0,0,0}
3215
+ };
3216
+ const BoolInstr bi667[] = {
3217
+ {BO_XOR,2,3,2},{BO_EQV,1,2,1},{BO_AND,0,1,0},
3218
+ {BO_HLT,0,0,0}
3219
+ };
3220
+ const BoolInstr bi668[] = {
3221
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_EQV,2,3,1},
3222
+ {BO_AND,0,1,0},
3223
+ {BO_HLT,0,0,0}
3224
+ };
3225
+ const BoolInstr bi669[] = {
3226
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3227
+ {BO_EQV,2,3,1},{BO_AND,0,1,0},
3228
+ {BO_HLT,0,0,0}
3229
+ };
3230
+ const BoolInstr bi670[] = {
3231
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3232
+ {BO_AND,0,1,0},
3233
+ {BO_HLT,0,0,0}
3234
+ };
3235
+ const BoolInstr bi671[] = {
3236
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3237
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
3238
+ {BO_HLT,0,0,0}
3239
+ };
3240
+ const BoolInstr bi672[] = {
3241
+ {BO_XOR,0,1,0},{BO_EQV,2,3,1},{BO_OR ,0,1,0},
3242
+ {BO_HLT,0,0,0}
3243
+ };
3244
+ const BoolInstr bi673[] = {
3245
+ {BO_XOR,0,1,0},{BO_EQV,0,2,0},{BO_OR ,0,3,0},
3246
+ {BO_HLT,0,0,0}
3247
+ };
3248
+ const BoolInstr bi674[] = {
3249
+ {BO_XOR,2,3,2},{BO_EQV,1,2,1},{BO_OR ,0,1,0},
3250
+ {BO_HLT,0,0,0}
3251
+ };
3252
+ const BoolInstr bi675[] = {
3253
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_EQV,2,3,1},
3254
+ {BO_OR ,0,1,0},
3255
+ {BO_HLT,0,0,0}
3256
+ };
3257
+ const BoolInstr bi676[] = {
3258
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3259
+ {BO_EQV,2,3,1},{BO_OR ,0,1,0},
3260
+ {BO_HLT,0,0,0}
3261
+ };
3262
+ const BoolInstr bi677[] = {
3263
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3264
+ {BO_OR ,0,1,0},
3265
+ {BO_HLT,0,0,0}
3266
+ };
3267
+ const BoolInstr bi678[] = {
3268
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3269
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
3270
+ {BO_HLT,0,0,0}
3271
+ };
3272
+ const BoolInstr bi679[] = {
3273
+ {BO_XOR,0,1,0},{BO_EQV,2,3,1},{BO_IMP,0,1,0},
3274
+ {BO_HLT,0,0,0}
3275
+ };
3276
+ const BoolInstr bi680[] = {
3277
+ {BO_XOR,0,1,0},{BO_EQV,0,2,0},{BO_IMP,0,3,0},
3278
+ {BO_HLT,0,0,0}
3279
+ };
3280
+ const BoolInstr bi681[] = {
3281
+ {BO_XOR,2,3,2},{BO_EQV,1,2,1},{BO_IMP,0,1,0},
3282
+ {BO_HLT,0,0,0}
3283
+ };
3284
+ const BoolInstr bi682[] = {
3285
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_EQV,2,3,1},
3286
+ {BO_IMP,0,1,0},
3287
+ {BO_HLT,0,0,0}
3288
+ };
3289
+ const BoolInstr bi683[] = {
3290
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3291
+ {BO_EQV,2,3,1},{BO_IMP,0,1,0},
3292
+ {BO_HLT,0,0,0}
3293
+ };
3294
+ const BoolInstr bi684[] = {
3295
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3296
+ {BO_IMP,0,1,0},
3297
+ {BO_HLT,0,0,0}
3298
+ };
3299
+ const BoolInstr bi685[] = {
3300
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3301
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
3302
+ {BO_HLT,0,0,0}
3303
+ };
3304
+ const BoolInstr bi686[] = {
3305
+ {BO_XOR,0,1,0},{BO_EQV,2,3,1},{BO_XOR,0,1,0},
3306
+ {BO_HLT,0,0,0}
3307
+ };
3308
+ const BoolInstr bi687[] = {
3309
+ {BO_XOR,0,1,0},{BO_EQV,0,2,0},{BO_XOR,0,3,0},
3310
+ {BO_HLT,0,0,0}
3311
+ };
3312
+ const BoolInstr bi688[] = {
3313
+ {BO_XOR,2,3,2},{BO_EQV,1,2,1},{BO_XOR,0,1,0},
3314
+ {BO_HLT,0,0,0}
3315
+ };
3316
+ const BoolInstr bi689[] = {
3317
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_EQV,2,3,1},
3318
+ {BO_XOR,0,1,0},
3319
+ {BO_HLT,0,0,0}
3320
+ };
3321
+ const BoolInstr bi690[] = {
3322
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3323
+ {BO_EQV,2,3,1},{BO_XOR,0,1,0},
3324
+ {BO_HLT,0,0,0}
3325
+ };
3326
+ const BoolInstr bi691[] = {
3327
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3328
+ {BO_XOR,0,1,0},
3329
+ {BO_HLT,0,0,0}
3330
+ };
3331
+ const BoolInstr bi692[] = {
3332
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3333
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
3334
+ {BO_HLT,0,0,0}
3335
+ };
3336
+ const BoolInstr bi693[] = {
3337
+ {BO_XOR,0,1,0},{BO_EQV,2,3,1},{BO_EQV,0,1,0},
3338
+ {BO_HLT,0,0,0}
3339
+ };
3340
+ const BoolInstr bi694[] = {
3341
+ {BO_XOR,0,1,0},{BO_EQV,0,2,0},{BO_EQV,0,3,0},
3342
+ {BO_HLT,0,0,0}
3343
+ };
3344
+ const BoolInstr bi695[] = {
3345
+ {BO_XOR,2,3,2},{BO_EQV,1,2,1},{BO_EQV,0,1,0},
3346
+ {BO_HLT,0,0,0}
3347
+ };
3348
+ const BoolInstr bi696[] = {
3349
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_XOR,0,1,0},{BO_EQV,2,3,1},
3350
+ {BO_EQV,0,1,0},
3351
+ {BO_HLT,0,0,0}
3352
+ };
3353
+ const BoolInstr bi697[] = {
3354
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_XOR,0,1,0},
3355
+ {BO_EQV,2,3,1},{BO_EQV,0,1,0},
3356
+ {BO_HLT,0,0,0}
3357
+ };
3358
+ const BoolInstr bi698[] = {
3359
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3360
+ {BO_EQV,0,1,0},
3361
+ {BO_HLT,0,0,0}
3362
+ };
3363
+ const BoolInstr bi699[] = {
3364
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
3365
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
3366
+ {BO_HLT,0,0,0}
3367
+ };
3368
+ const BoolInstr bi700[] = {
3369
+ {BO_EQV,0,1,0},{BO_AND,2,3,1},{BO_AND,0,1,0},
3370
+ {BO_HLT,0,0,0}
3371
+ };
3372
+ const BoolInstr bi701[] = {
3373
+ {BO_EQV,0,1,0},{BO_AND,0,2,0},{BO_AND,0,3,0},
3374
+ {BO_HLT,0,0,0}
3375
+ };
3376
+ const BoolInstr bi702[] = {
3377
+ {BO_EQV,2,3,2},{BO_AND,1,2,1},{BO_AND,0,1,0},
3378
+ {BO_HLT,0,0,0}
3379
+ };
3380
+ const BoolInstr bi703[] = {
3381
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_AND,2,3,1},
3382
+ {BO_AND,0,1,0},
3383
+ {BO_HLT,0,0,0}
3384
+ };
3385
+ const BoolInstr bi704[] = {
3386
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3387
+ {BO_AND,2,3,1},{BO_AND,0,1,0},
3388
+ {BO_HLT,0,0,0}
3389
+ };
3390
+ const BoolInstr bi705[] = {
3391
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3392
+ {BO_AND,0,1,0},
3393
+ {BO_HLT,0,0,0}
3394
+ };
3395
+ const BoolInstr bi706[] = {
3396
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3397
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
3398
+ {BO_HLT,0,0,0}
3399
+ };
3400
+ const BoolInstr bi707[] = {
3401
+ {BO_EQV,0,1,0},{BO_AND,2,3,1},{BO_OR ,0,1,0},
3402
+ {BO_HLT,0,0,0}
3403
+ };
3404
+ const BoolInstr bi708[] = {
3405
+ {BO_EQV,0,1,0},{BO_AND,0,2,0},{BO_OR ,0,3,0},
3406
+ {BO_HLT,0,0,0}
3407
+ };
3408
+ const BoolInstr bi709[] = {
3409
+ {BO_EQV,2,3,2},{BO_AND,1,2,1},{BO_OR ,0,1,0},
3410
+ {BO_HLT,0,0,0}
3411
+ };
3412
+ const BoolInstr bi710[] = {
3413
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_AND,2,3,1},
3414
+ {BO_OR ,0,1,0},
3415
+ {BO_HLT,0,0,0}
3416
+ };
3417
+ const BoolInstr bi711[] = {
3418
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3419
+ {BO_AND,2,3,1},{BO_OR ,0,1,0},
3420
+ {BO_HLT,0,0,0}
3421
+ };
3422
+ const BoolInstr bi712[] = {
3423
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3424
+ {BO_OR ,0,1,0},
3425
+ {BO_HLT,0,0,0}
3426
+ };
3427
+ const BoolInstr bi713[] = {
3428
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3429
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
3430
+ {BO_HLT,0,0,0}
3431
+ };
3432
+ const BoolInstr bi714[] = {
3433
+ {BO_EQV,0,1,0},{BO_AND,2,3,1},{BO_IMP,0,1,0},
3434
+ {BO_HLT,0,0,0}
3435
+ };
3436
+ const BoolInstr bi715[] = {
3437
+ {BO_EQV,0,1,0},{BO_AND,0,2,0},{BO_IMP,0,3,0},
3438
+ {BO_HLT,0,0,0}
3439
+ };
3440
+ const BoolInstr bi716[] = {
3441
+ {BO_EQV,2,3,2},{BO_AND,1,2,1},{BO_IMP,0,1,0},
3442
+ {BO_HLT,0,0,0}
3443
+ };
3444
+ const BoolInstr bi717[] = {
3445
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_AND,2,3,1},
3446
+ {BO_IMP,0,1,0},
3447
+ {BO_HLT,0,0,0}
3448
+ };
3449
+ const BoolInstr bi718[] = {
3450
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3451
+ {BO_AND,2,3,1},{BO_IMP,0,1,0},
3452
+ {BO_HLT,0,0,0}
3453
+ };
3454
+ const BoolInstr bi719[] = {
3455
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3456
+ {BO_IMP,0,1,0},
3457
+ {BO_HLT,0,0,0}
3458
+ };
3459
+ const BoolInstr bi720[] = {
3460
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3461
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
3462
+ {BO_HLT,0,0,0}
3463
+ };
3464
+ const BoolInstr bi721[] = {
3465
+ {BO_EQV,0,1,0},{BO_AND,2,3,1},{BO_XOR,0,1,0},
3466
+ {BO_HLT,0,0,0}
3467
+ };
3468
+ const BoolInstr bi722[] = {
3469
+ {BO_EQV,0,1,0},{BO_AND,0,2,0},{BO_XOR,0,3,0},
3470
+ {BO_HLT,0,0,0}
3471
+ };
3472
+ const BoolInstr bi723[] = {
3473
+ {BO_EQV,2,3,2},{BO_AND,1,2,1},{BO_XOR,0,1,0},
3474
+ {BO_HLT,0,0,0}
3475
+ };
3476
+ const BoolInstr bi724[] = {
3477
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_AND,2,3,1},
3478
+ {BO_XOR,0,1,0},
3479
+ {BO_HLT,0,0,0}
3480
+ };
3481
+ const BoolInstr bi725[] = {
3482
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3483
+ {BO_AND,2,3,1},{BO_XOR,0,1,0},
3484
+ {BO_HLT,0,0,0}
3485
+ };
3486
+ const BoolInstr bi726[] = {
3487
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3488
+ {BO_XOR,0,1,0},
3489
+ {BO_HLT,0,0,0}
3490
+ };
3491
+ const BoolInstr bi727[] = {
3492
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3493
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
3494
+ {BO_HLT,0,0,0}
3495
+ };
3496
+ const BoolInstr bi728[] = {
3497
+ {BO_EQV,0,1,0},{BO_AND,2,3,1},{BO_EQV,0,1,0},
3498
+ {BO_HLT,0,0,0}
3499
+ };
3500
+ const BoolInstr bi729[] = {
3501
+ {BO_EQV,0,1,0},{BO_AND,0,2,0},{BO_EQV,0,3,0},
3502
+ {BO_HLT,0,0,0}
3503
+ };
3504
+ const BoolInstr bi730[] = {
3505
+ {BO_EQV,2,3,2},{BO_AND,1,2,1},{BO_EQV,0,1,0},
3506
+ {BO_HLT,0,0,0}
3507
+ };
3508
+ const BoolInstr bi731[] = {
3509
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_AND,2,3,1},
3510
+ {BO_EQV,0,1,0},
3511
+ {BO_HLT,0,0,0}
3512
+ };
3513
+ const BoolInstr bi732[] = {
3514
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3515
+ {BO_AND,2,3,1},{BO_EQV,0,1,0},
3516
+ {BO_HLT,0,0,0}
3517
+ };
3518
+ const BoolInstr bi733[] = {
3519
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3520
+ {BO_EQV,0,1,0},
3521
+ {BO_HLT,0,0,0}
3522
+ };
3523
+ const BoolInstr bi734[] = {
3524
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_AND,2,3,1},{BO_NOT,1,1,0},
3525
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
3526
+ {BO_HLT,0,0,0}
3527
+ };
3528
+ const BoolInstr bi735[] = {
3529
+ {BO_EQV,0,1,0},{BO_OR ,2,3,1},{BO_AND,0,1,0},
3530
+ {BO_HLT,0,0,0}
3531
+ };
3532
+ const BoolInstr bi736[] = {
3533
+ {BO_EQV,0,1,0},{BO_OR ,0,2,0},{BO_AND,0,3,0},
3534
+ {BO_HLT,0,0,0}
3535
+ };
3536
+ const BoolInstr bi737[] = {
3537
+ {BO_EQV,2,3,2},{BO_OR ,1,2,1},{BO_AND,0,1,0},
3538
+ {BO_HLT,0,0,0}
3539
+ };
3540
+ const BoolInstr bi738[] = {
3541
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_OR ,2,3,1},
3542
+ {BO_AND,0,1,0},
3543
+ {BO_HLT,0,0,0}
3544
+ };
3545
+ const BoolInstr bi739[] = {
3546
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3547
+ {BO_OR ,2,3,1},{BO_AND,0,1,0},
3548
+ {BO_HLT,0,0,0}
3549
+ };
3550
+ const BoolInstr bi740[] = {
3551
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3552
+ {BO_AND,0,1,0},
3553
+ {BO_HLT,0,0,0}
3554
+ };
3555
+ const BoolInstr bi741[] = {
3556
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3557
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
3558
+ {BO_HLT,0,0,0}
3559
+ };
3560
+ const BoolInstr bi742[] = {
3561
+ {BO_EQV,0,1,0},{BO_OR ,2,3,1},{BO_OR ,0,1,0},
3562
+ {BO_HLT,0,0,0}
3563
+ };
3564
+ const BoolInstr bi743[] = {
3565
+ {BO_EQV,0,1,0},{BO_OR ,0,2,0},{BO_OR ,0,3,0},
3566
+ {BO_HLT,0,0,0}
3567
+ };
3568
+ const BoolInstr bi744[] = {
3569
+ {BO_EQV,2,3,2},{BO_OR ,1,2,1},{BO_OR ,0,1,0},
3570
+ {BO_HLT,0,0,0}
3571
+ };
3572
+ const BoolInstr bi745[] = {
3573
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_OR ,2,3,1},
3574
+ {BO_OR ,0,1,0},
3575
+ {BO_HLT,0,0,0}
3576
+ };
3577
+ const BoolInstr bi746[] = {
3578
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3579
+ {BO_OR ,2,3,1},{BO_OR ,0,1,0},
3580
+ {BO_HLT,0,0,0}
3581
+ };
3582
+ const BoolInstr bi747[] = {
3583
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3584
+ {BO_OR ,0,1,0},
3585
+ {BO_HLT,0,0,0}
3586
+ };
3587
+ const BoolInstr bi748[] = {
3588
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3589
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
3590
+ {BO_HLT,0,0,0}
3591
+ };
3592
+ const BoolInstr bi749[] = {
3593
+ {BO_EQV,0,1,0},{BO_OR ,2,3,1},{BO_IMP,0,1,0},
3594
+ {BO_HLT,0,0,0}
3595
+ };
3596
+ const BoolInstr bi750[] = {
3597
+ {BO_EQV,0,1,0},{BO_OR ,0,2,0},{BO_IMP,0,3,0},
3598
+ {BO_HLT,0,0,0}
3599
+ };
3600
+ const BoolInstr bi751[] = {
3601
+ {BO_EQV,2,3,2},{BO_OR ,1,2,1},{BO_IMP,0,1,0},
3602
+ {BO_HLT,0,0,0}
3603
+ };
3604
+ const BoolInstr bi752[] = {
3605
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_OR ,2,3,1},
3606
+ {BO_IMP,0,1,0},
3607
+ {BO_HLT,0,0,0}
3608
+ };
3609
+ const BoolInstr bi753[] = {
3610
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3611
+ {BO_OR ,2,3,1},{BO_IMP,0,1,0},
3612
+ {BO_HLT,0,0,0}
3613
+ };
3614
+ const BoolInstr bi754[] = {
3615
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3616
+ {BO_IMP,0,1,0},
3617
+ {BO_HLT,0,0,0}
3618
+ };
3619
+ const BoolInstr bi755[] = {
3620
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3621
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
3622
+ {BO_HLT,0,0,0}
3623
+ };
3624
+ const BoolInstr bi756[] = {
3625
+ {BO_EQV,0,1,0},{BO_OR ,2,3,1},{BO_XOR,0,1,0},
3626
+ {BO_HLT,0,0,0}
3627
+ };
3628
+ const BoolInstr bi757[] = {
3629
+ {BO_EQV,0,1,0},{BO_OR ,0,2,0},{BO_XOR,0,3,0},
3630
+ {BO_HLT,0,0,0}
3631
+ };
3632
+ const BoolInstr bi758[] = {
3633
+ {BO_EQV,2,3,2},{BO_OR ,1,2,1},{BO_XOR,0,1,0},
3634
+ {BO_HLT,0,0,0}
3635
+ };
3636
+ const BoolInstr bi759[] = {
3637
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_OR ,2,3,1},
3638
+ {BO_XOR,0,1,0},
3639
+ {BO_HLT,0,0,0}
3640
+ };
3641
+ const BoolInstr bi760[] = {
3642
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3643
+ {BO_OR ,2,3,1},{BO_XOR,0,1,0},
3644
+ {BO_HLT,0,0,0}
3645
+ };
3646
+ const BoolInstr bi761[] = {
3647
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3648
+ {BO_XOR,0,1,0},
3649
+ {BO_HLT,0,0,0}
3650
+ };
3651
+ const BoolInstr bi762[] = {
3652
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3653
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
3654
+ {BO_HLT,0,0,0}
3655
+ };
3656
+ const BoolInstr bi763[] = {
3657
+ {BO_EQV,0,1,0},{BO_OR ,2,3,1},{BO_EQV,0,1,0},
3658
+ {BO_HLT,0,0,0}
3659
+ };
3660
+ const BoolInstr bi764[] = {
3661
+ {BO_EQV,0,1,0},{BO_OR ,0,2,0},{BO_EQV,0,3,0},
3662
+ {BO_HLT,0,0,0}
3663
+ };
3664
+ const BoolInstr bi765[] = {
3665
+ {BO_EQV,2,3,2},{BO_OR ,1,2,1},{BO_EQV,0,1,0},
3666
+ {BO_HLT,0,0,0}
3667
+ };
3668
+ const BoolInstr bi766[] = {
3669
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_OR ,2,3,1},
3670
+ {BO_EQV,0,1,0},
3671
+ {BO_HLT,0,0,0}
3672
+ };
3673
+ const BoolInstr bi767[] = {
3674
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3675
+ {BO_OR ,2,3,1},{BO_EQV,0,1,0},
3676
+ {BO_HLT,0,0,0}
3677
+ };
3678
+ const BoolInstr bi768[] = {
3679
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3680
+ {BO_EQV,0,1,0},
3681
+ {BO_HLT,0,0,0}
3682
+ };
3683
+ const BoolInstr bi769[] = {
3684
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_OR ,2,3,1},{BO_NOT,1,1,0},
3685
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
3686
+ {BO_HLT,0,0,0}
3687
+ };
3688
+ const BoolInstr bi770[] = {
3689
+ {BO_EQV,0,1,0},{BO_IMP,2,3,1},{BO_AND,0,1,0},
3690
+ {BO_HLT,0,0,0}
3691
+ };
3692
+ const BoolInstr bi771[] = {
3693
+ {BO_EQV,0,1,0},{BO_IMP,0,2,0},{BO_AND,0,3,0},
3694
+ {BO_HLT,0,0,0}
3695
+ };
3696
+ const BoolInstr bi772[] = {
3697
+ {BO_EQV,2,3,2},{BO_IMP,1,2,1},{BO_AND,0,1,0},
3698
+ {BO_HLT,0,0,0}
3699
+ };
3700
+ const BoolInstr bi773[] = {
3701
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_IMP,2,3,1},
3702
+ {BO_AND,0,1,0},
3703
+ {BO_HLT,0,0,0}
3704
+ };
3705
+ const BoolInstr bi774[] = {
3706
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3707
+ {BO_IMP,2,3,1},{BO_AND,0,1,0},
3708
+ {BO_HLT,0,0,0}
3709
+ };
3710
+ const BoolInstr bi775[] = {
3711
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3712
+ {BO_AND,0,1,0},
3713
+ {BO_HLT,0,0,0}
3714
+ };
3715
+ const BoolInstr bi776[] = {
3716
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3717
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
3718
+ {BO_HLT,0,0,0}
3719
+ };
3720
+ const BoolInstr bi777[] = {
3721
+ {BO_EQV,0,1,0},{BO_IMP,2,3,1},{BO_OR ,0,1,0},
3722
+ {BO_HLT,0,0,0}
3723
+ };
3724
+ const BoolInstr bi778[] = {
3725
+ {BO_EQV,0,1,0},{BO_IMP,0,2,0},{BO_OR ,0,3,0},
3726
+ {BO_HLT,0,0,0}
3727
+ };
3728
+ const BoolInstr bi779[] = {
3729
+ {BO_EQV,2,3,2},{BO_IMP,1,2,1},{BO_OR ,0,1,0},
3730
+ {BO_HLT,0,0,0}
3731
+ };
3732
+ const BoolInstr bi780[] = {
3733
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_IMP,2,3,1},
3734
+ {BO_OR ,0,1,0},
3735
+ {BO_HLT,0,0,0}
3736
+ };
3737
+ const BoolInstr bi781[] = {
3738
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3739
+ {BO_IMP,2,3,1},{BO_OR ,0,1,0},
3740
+ {BO_HLT,0,0,0}
3741
+ };
3742
+ const BoolInstr bi782[] = {
3743
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3744
+ {BO_OR ,0,1,0},
3745
+ {BO_HLT,0,0,0}
3746
+ };
3747
+ const BoolInstr bi783[] = {
3748
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3749
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
3750
+ {BO_HLT,0,0,0}
3751
+ };
3752
+ const BoolInstr bi784[] = {
3753
+ {BO_EQV,0,1,0},{BO_IMP,2,3,1},{BO_IMP,0,1,0},
3754
+ {BO_HLT,0,0,0}
3755
+ };
3756
+ const BoolInstr bi785[] = {
3757
+ {BO_EQV,0,1,0},{BO_IMP,0,2,0},{BO_IMP,0,3,0},
3758
+ {BO_HLT,0,0,0}
3759
+ };
3760
+ const BoolInstr bi786[] = {
3761
+ {BO_EQV,2,3,2},{BO_IMP,1,2,1},{BO_IMP,0,1,0},
3762
+ {BO_HLT,0,0,0}
3763
+ };
3764
+ const BoolInstr bi787[] = {
3765
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_IMP,2,3,1},
3766
+ {BO_IMP,0,1,0},
3767
+ {BO_HLT,0,0,0}
3768
+ };
3769
+ const BoolInstr bi788[] = {
3770
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3771
+ {BO_IMP,2,3,1},{BO_IMP,0,1,0},
3772
+ {BO_HLT,0,0,0}
3773
+ };
3774
+ const BoolInstr bi789[] = {
3775
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3776
+ {BO_IMP,0,1,0},
3777
+ {BO_HLT,0,0,0}
3778
+ };
3779
+ const BoolInstr bi790[] = {
3780
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3781
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
3782
+ {BO_HLT,0,0,0}
3783
+ };
3784
+ const BoolInstr bi791[] = {
3785
+ {BO_EQV,0,1,0},{BO_IMP,2,3,1},{BO_XOR,0,1,0},
3786
+ {BO_HLT,0,0,0}
3787
+ };
3788
+ const BoolInstr bi792[] = {
3789
+ {BO_EQV,0,1,0},{BO_IMP,0,2,0},{BO_XOR,0,3,0},
3790
+ {BO_HLT,0,0,0}
3791
+ };
3792
+ const BoolInstr bi793[] = {
3793
+ {BO_EQV,2,3,2},{BO_IMP,1,2,1},{BO_XOR,0,1,0},
3794
+ {BO_HLT,0,0,0}
3795
+ };
3796
+ const BoolInstr bi794[] = {
3797
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_IMP,2,3,1},
3798
+ {BO_XOR,0,1,0},
3799
+ {BO_HLT,0,0,0}
3800
+ };
3801
+ const BoolInstr bi795[] = {
3802
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3803
+ {BO_IMP,2,3,1},{BO_XOR,0,1,0},
3804
+ {BO_HLT,0,0,0}
3805
+ };
3806
+ const BoolInstr bi796[] = {
3807
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3808
+ {BO_XOR,0,1,0},
3809
+ {BO_HLT,0,0,0}
3810
+ };
3811
+ const BoolInstr bi797[] = {
3812
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3813
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
3814
+ {BO_HLT,0,0,0}
3815
+ };
3816
+ const BoolInstr bi798[] = {
3817
+ {BO_EQV,0,1,0},{BO_IMP,2,3,1},{BO_EQV,0,1,0},
3818
+ {BO_HLT,0,0,0}
3819
+ };
3820
+ const BoolInstr bi799[] = {
3821
+ {BO_EQV,0,1,0},{BO_IMP,0,2,0},{BO_EQV,0,3,0},
3822
+ {BO_HLT,0,0,0}
3823
+ };
3824
+ const BoolInstr bi800[] = {
3825
+ {BO_EQV,2,3,2},{BO_IMP,1,2,1},{BO_EQV,0,1,0},
3826
+ {BO_HLT,0,0,0}
3827
+ };
3828
+ const BoolInstr bi801[] = {
3829
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_IMP,2,3,1},
3830
+ {BO_EQV,0,1,0},
3831
+ {BO_HLT,0,0,0}
3832
+ };
3833
+ const BoolInstr bi802[] = {
3834
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3835
+ {BO_IMP,2,3,1},{BO_EQV,0,1,0},
3836
+ {BO_HLT,0,0,0}
3837
+ };
3838
+ const BoolInstr bi803[] = {
3839
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3840
+ {BO_EQV,0,1,0},
3841
+ {BO_HLT,0,0,0}
3842
+ };
3843
+ const BoolInstr bi804[] = {
3844
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_IMP,2,3,1},{BO_NOT,1,1,0},
3845
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
3846
+ {BO_HLT,0,0,0}
3847
+ };
3848
+ const BoolInstr bi805[] = {
3849
+ {BO_EQV,0,1,0},{BO_XOR,2,3,1},{BO_AND,0,1,0},
3850
+ {BO_HLT,0,0,0}
3851
+ };
3852
+ const BoolInstr bi806[] = {
3853
+ {BO_EQV,0,1,0},{BO_XOR,0,2,0},{BO_AND,0,3,0},
3854
+ {BO_HLT,0,0,0}
3855
+ };
3856
+ const BoolInstr bi807[] = {
3857
+ {BO_EQV,2,3,2},{BO_XOR,1,2,1},{BO_AND,0,1,0},
3858
+ {BO_HLT,0,0,0}
3859
+ };
3860
+ const BoolInstr bi808[] = {
3861
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_XOR,2,3,1},
3862
+ {BO_AND,0,1,0},
3863
+ {BO_HLT,0,0,0}
3864
+ };
3865
+ const BoolInstr bi809[] = {
3866
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3867
+ {BO_XOR,2,3,1},{BO_AND,0,1,0},
3868
+ {BO_HLT,0,0,0}
3869
+ };
3870
+ const BoolInstr bi810[] = {
3871
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3872
+ {BO_AND,0,1,0},
3873
+ {BO_HLT,0,0,0}
3874
+ };
3875
+ const BoolInstr bi811[] = {
3876
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3877
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
3878
+ {BO_HLT,0,0,0}
3879
+ };
3880
+ const BoolInstr bi812[] = {
3881
+ {BO_EQV,0,1,0},{BO_XOR,2,3,1},{BO_OR ,0,1,0},
3882
+ {BO_HLT,0,0,0}
3883
+ };
3884
+ const BoolInstr bi813[] = {
3885
+ {BO_EQV,0,1,0},{BO_XOR,0,2,0},{BO_OR ,0,3,0},
3886
+ {BO_HLT,0,0,0}
3887
+ };
3888
+ const BoolInstr bi814[] = {
3889
+ {BO_EQV,2,3,2},{BO_XOR,1,2,1},{BO_OR ,0,1,0},
3890
+ {BO_HLT,0,0,0}
3891
+ };
3892
+ const BoolInstr bi815[] = {
3893
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_XOR,2,3,1},
3894
+ {BO_OR ,0,1,0},
3895
+ {BO_HLT,0,0,0}
3896
+ };
3897
+ const BoolInstr bi816[] = {
3898
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3899
+ {BO_XOR,2,3,1},{BO_OR ,0,1,0},
3900
+ {BO_HLT,0,0,0}
3901
+ };
3902
+ const BoolInstr bi817[] = {
3903
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3904
+ {BO_OR ,0,1,0},
3905
+ {BO_HLT,0,0,0}
3906
+ };
3907
+ const BoolInstr bi818[] = {
3908
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3909
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
3910
+ {BO_HLT,0,0,0}
3911
+ };
3912
+ const BoolInstr bi819[] = {
3913
+ {BO_EQV,0,1,0},{BO_XOR,2,3,1},{BO_IMP,0,1,0},
3914
+ {BO_HLT,0,0,0}
3915
+ };
3916
+ const BoolInstr bi820[] = {
3917
+ {BO_EQV,0,1,0},{BO_XOR,0,2,0},{BO_IMP,0,3,0},
3918
+ {BO_HLT,0,0,0}
3919
+ };
3920
+ const BoolInstr bi821[] = {
3921
+ {BO_EQV,2,3,2},{BO_XOR,1,2,1},{BO_IMP,0,1,0},
3922
+ {BO_HLT,0,0,0}
3923
+ };
3924
+ const BoolInstr bi822[] = {
3925
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_XOR,2,3,1},
3926
+ {BO_IMP,0,1,0},
3927
+ {BO_HLT,0,0,0}
3928
+ };
3929
+ const BoolInstr bi823[] = {
3930
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3931
+ {BO_XOR,2,3,1},{BO_IMP,0,1,0},
3932
+ {BO_HLT,0,0,0}
3933
+ };
3934
+ const BoolInstr bi824[] = {
3935
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3936
+ {BO_IMP,0,1,0},
3937
+ {BO_HLT,0,0,0}
3938
+ };
3939
+ const BoolInstr bi825[] = {
3940
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3941
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
3942
+ {BO_HLT,0,0,0}
3943
+ };
3944
+ const BoolInstr bi826[] = {
3945
+ {BO_EQV,0,1,0},{BO_XOR,2,3,1},{BO_XOR,0,1,0},
3946
+ {BO_HLT,0,0,0}
3947
+ };
3948
+ const BoolInstr bi827[] = {
3949
+ {BO_EQV,0,1,0},{BO_XOR,0,2,0},{BO_XOR,0,3,0},
3950
+ {BO_HLT,0,0,0}
3951
+ };
3952
+ const BoolInstr bi828[] = {
3953
+ {BO_EQV,2,3,2},{BO_XOR,1,2,1},{BO_XOR,0,1,0},
3954
+ {BO_HLT,0,0,0}
3955
+ };
3956
+ const BoolInstr bi829[] = {
3957
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_XOR,2,3,1},
3958
+ {BO_XOR,0,1,0},
3959
+ {BO_HLT,0,0,0}
3960
+ };
3961
+ const BoolInstr bi830[] = {
3962
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3963
+ {BO_XOR,2,3,1},{BO_XOR,0,1,0},
3964
+ {BO_HLT,0,0,0}
3965
+ };
3966
+ const BoolInstr bi831[] = {
3967
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3968
+ {BO_XOR,0,1,0},
3969
+ {BO_HLT,0,0,0}
3970
+ };
3971
+ const BoolInstr bi832[] = {
3972
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
3973
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
3974
+ {BO_HLT,0,0,0}
3975
+ };
3976
+ const BoolInstr bi833[] = {
3977
+ {BO_EQV,0,1,0},{BO_XOR,2,3,1},{BO_EQV,0,1,0},
3978
+ {BO_HLT,0,0,0}
3979
+ };
3980
+ const BoolInstr bi834[] = {
3981
+ {BO_EQV,0,1,0},{BO_XOR,0,2,0},{BO_EQV,0,3,0},
3982
+ {BO_HLT,0,0,0}
3983
+ };
3984
+ const BoolInstr bi835[] = {
3985
+ {BO_EQV,2,3,2},{BO_XOR,1,2,1},{BO_EQV,0,1,0},
3986
+ {BO_HLT,0,0,0}
3987
+ };
3988
+ const BoolInstr bi836[] = {
3989
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_XOR,2,3,1},
3990
+ {BO_EQV,0,1,0},
3991
+ {BO_HLT,0,0,0}
3992
+ };
3993
+ const BoolInstr bi837[] = {
3994
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
3995
+ {BO_XOR,2,3,1},{BO_EQV,0,1,0},
3996
+ {BO_HLT,0,0,0}
3997
+ };
3998
+ const BoolInstr bi838[] = {
3999
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
4000
+ {BO_EQV,0,1,0},
4001
+ {BO_HLT,0,0,0}
4002
+ };
4003
+ const BoolInstr bi839[] = {
4004
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_XOR,2,3,1},{BO_NOT,1,1,0},
4005
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
4006
+ {BO_HLT,0,0,0}
4007
+ };
4008
+ const BoolInstr bi840[] = {
4009
+ {BO_EQV,0,1,0},{BO_EQV,2,3,1},{BO_AND,0,1,0},
4010
+ {BO_HLT,0,0,0}
4011
+ };
4012
+ const BoolInstr bi841[] = {
4013
+ {BO_EQV,0,1,0},{BO_EQV,0,2,0},{BO_AND,0,3,0},
4014
+ {BO_HLT,0,0,0}
4015
+ };
4016
+ const BoolInstr bi842[] = {
4017
+ {BO_EQV,2,3,2},{BO_EQV,1,2,1},{BO_AND,0,1,0},
4018
+ {BO_HLT,0,0,0}
4019
+ };
4020
+ const BoolInstr bi843[] = {
4021
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_EQV,2,3,1},
4022
+ {BO_AND,0,1,0},
4023
+ {BO_HLT,0,0,0}
4024
+ };
4025
+ const BoolInstr bi844[] = {
4026
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
4027
+ {BO_EQV,2,3,1},{BO_AND,0,1,0},
4028
+ {BO_HLT,0,0,0}
4029
+ };
4030
+ const BoolInstr bi845[] = {
4031
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4032
+ {BO_AND,0,1,0},
4033
+ {BO_HLT,0,0,0}
4034
+ };
4035
+ const BoolInstr bi846[] = {
4036
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4037
+ {BO_AND,0,1,0},{BO_NOT,0,0,0},
4038
+ {BO_HLT,0,0,0}
4039
+ };
4040
+ const BoolInstr bi847[] = {
4041
+ {BO_EQV,0,1,0},{BO_EQV,2,3,1},{BO_OR ,0,1,0},
4042
+ {BO_HLT,0,0,0}
4043
+ };
4044
+ const BoolInstr bi848[] = {
4045
+ {BO_EQV,0,1,0},{BO_EQV,0,2,0},{BO_OR ,0,3,0},
4046
+ {BO_HLT,0,0,0}
4047
+ };
4048
+ const BoolInstr bi849[] = {
4049
+ {BO_EQV,2,3,2},{BO_EQV,1,2,1},{BO_OR ,0,1,0},
4050
+ {BO_HLT,0,0,0}
4051
+ };
4052
+ const BoolInstr bi850[] = {
4053
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_EQV,2,3,1},
4054
+ {BO_OR ,0,1,0},
4055
+ {BO_HLT,0,0,0}
4056
+ };
4057
+ const BoolInstr bi851[] = {
4058
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
4059
+ {BO_EQV,2,3,1},{BO_OR ,0,1,0},
4060
+ {BO_HLT,0,0,0}
4061
+ };
4062
+ const BoolInstr bi852[] = {
4063
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4064
+ {BO_OR ,0,1,0},
4065
+ {BO_HLT,0,0,0}
4066
+ };
4067
+ const BoolInstr bi853[] = {
4068
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4069
+ {BO_OR ,0,1,0},{BO_NOT,0,0,0},
4070
+ {BO_HLT,0,0,0}
4071
+ };
4072
+ const BoolInstr bi854[] = {
4073
+ {BO_EQV,0,1,0},{BO_EQV,2,3,1},{BO_IMP,0,1,0},
4074
+ {BO_HLT,0,0,0}
4075
+ };
4076
+ const BoolInstr bi855[] = {
4077
+ {BO_EQV,0,1,0},{BO_EQV,0,2,0},{BO_IMP,0,3,0},
4078
+ {BO_HLT,0,0,0}
4079
+ };
4080
+ const BoolInstr bi856[] = {
4081
+ {BO_EQV,2,3,2},{BO_EQV,1,2,1},{BO_IMP,0,1,0},
4082
+ {BO_HLT,0,0,0}
4083
+ };
4084
+ const BoolInstr bi857[] = {
4085
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_EQV,2,3,1},
4086
+ {BO_IMP,0,1,0},
4087
+ {BO_HLT,0,0,0}
4088
+ };
4089
+ const BoolInstr bi858[] = {
4090
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
4091
+ {BO_EQV,2,3,1},{BO_IMP,0,1,0},
4092
+ {BO_HLT,0,0,0}
4093
+ };
4094
+ const BoolInstr bi859[] = {
4095
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4096
+ {BO_IMP,0,1,0},
4097
+ {BO_HLT,0,0,0}
4098
+ };
4099
+ const BoolInstr bi860[] = {
4100
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4101
+ {BO_IMP,0,1,0},{BO_NOT,0,0,0},
4102
+ {BO_HLT,0,0,0}
4103
+ };
4104
+ const BoolInstr bi861[] = {
4105
+ {BO_EQV,0,1,0},{BO_EQV,2,3,1},{BO_XOR,0,1,0},
4106
+ {BO_HLT,0,0,0}
4107
+ };
4108
+ const BoolInstr bi862[] = {
4109
+ {BO_EQV,0,1,0},{BO_EQV,0,2,0},{BO_XOR,0,3,0},
4110
+ {BO_HLT,0,0,0}
4111
+ };
4112
+ const BoolInstr bi863[] = {
4113
+ {BO_EQV,2,3,2},{BO_EQV,1,2,1},{BO_XOR,0,1,0},
4114
+ {BO_HLT,0,0,0}
4115
+ };
4116
+ const BoolInstr bi864[] = {
4117
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_EQV,2,3,1},
4118
+ {BO_XOR,0,1,0},
4119
+ {BO_HLT,0,0,0}
4120
+ };
4121
+ const BoolInstr bi865[] = {
4122
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
4123
+ {BO_EQV,2,3,1},{BO_XOR,0,1,0},
4124
+ {BO_HLT,0,0,0}
4125
+ };
4126
+ const BoolInstr bi866[] = {
4127
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4128
+ {BO_XOR,0,1,0},
4129
+ {BO_HLT,0,0,0}
4130
+ };
4131
+ const BoolInstr bi867[] = {
4132
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4133
+ {BO_XOR,0,1,0},{BO_NOT,0,0,0},
4134
+ {BO_HLT,0,0,0}
4135
+ };
4136
+ const BoolInstr bi868[] = {
4137
+ {BO_EQV,0,1,0},{BO_EQV,2,3,1},{BO_EQV,0,1,0},
4138
+ {BO_HLT,0,0,0}
4139
+ };
4140
+ const BoolInstr bi869[] = {
4141
+ {BO_EQV,0,1,0},{BO_EQV,0,2,0},{BO_EQV,0,3,0},
4142
+ {BO_HLT,0,0,0}
4143
+ };
4144
+ const BoolInstr bi870[] = {
4145
+ {BO_EQV,2,3,2},{BO_EQV,1,2,1},{BO_EQV,0,1,0},
4146
+ {BO_HLT,0,0,0}
4147
+ };
4148
+ const BoolInstr bi871[] = {
4149
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_EQV,0,1,0},{BO_EQV,2,3,1},
4150
+ {BO_EQV,0,1,0},
4151
+ {BO_HLT,0,0,0}
4152
+ };
4153
+ const BoolInstr bi872[] = {
4154
+ {BO_NOT,0,0,0},{BO_NOT,2,2,0},{BO_NOT,0,0,0},{BO_EQV,0,1,0},
4155
+ {BO_EQV,2,3,1},{BO_EQV,0,1,0},
4156
+ {BO_HLT,0,0,0}
4157
+ };
4158
+ const BoolInstr bi873[] = {
4159
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4160
+ {BO_EQV,0,1,0},
4161
+ {BO_HLT,0,0,0}
4162
+ };
4163
+ const BoolInstr bi874[] = {
4164
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},{BO_EQV,2,3,1},{BO_NOT,1,1,0},
4165
+ {BO_EQV,0,1,0},{BO_NOT,0,0,0},
4166
+ {BO_HLT,0,0,0}
4167
+ };
4168
+
4169
+ const BoolInstr* bi[] = {
4170
+ &bi000[0],&bi001[0],&bi002[0],&bi003[0],&bi004[0],&bi005[0],
4171
+ &bi006[0],&bi007[0],&bi008[0],&bi009[0],&bi010[0],&bi011[0],
4172
+ &bi012[0],&bi013[0],&bi014[0],&bi015[0],&bi016[0],&bi017[0],
4173
+ &bi018[0],&bi019[0],&bi020[0],&bi021[0],&bi022[0],&bi023[0],
4174
+ &bi024[0],&bi025[0],&bi026[0],&bi027[0],&bi028[0],&bi029[0],
4175
+ &bi030[0],&bi031[0],&bi032[0],&bi033[0],&bi034[0],&bi035[0],
4176
+ &bi036[0],&bi037[0],&bi038[0],&bi039[0],&bi040[0],&bi041[0],
4177
+ &bi042[0],&bi043[0],&bi044[0],&bi045[0],&bi046[0],&bi047[0],
4178
+ &bi048[0],&bi049[0],&bi050[0],&bi051[0],&bi052[0],&bi053[0],
4179
+ &bi054[0],&bi055[0],&bi056[0],&bi057[0],&bi058[0],&bi059[0],
4180
+ &bi060[0],&bi061[0],&bi062[0],&bi063[0],&bi064[0],&bi065[0],
4181
+ &bi066[0],&bi067[0],&bi068[0],&bi069[0],&bi070[0],&bi071[0],
4182
+ &bi072[0],&bi073[0],&bi074[0],&bi075[0],&bi076[0],&bi077[0],
4183
+ &bi078[0],&bi079[0],&bi080[0],&bi081[0],&bi082[0],&bi083[0],
4184
+ &bi084[0],&bi085[0],&bi086[0],&bi087[0],&bi088[0],&bi089[0],
4185
+ &bi090[0],&bi091[0],&bi092[0],&bi093[0],&bi094[0],&bi095[0],
4186
+ &bi096[0],&bi097[0],&bi098[0],&bi099[0],&bi100[0],&bi101[0],
4187
+ &bi102[0],&bi103[0],&bi104[0],&bi105[0],&bi106[0],&bi107[0],
4188
+ &bi108[0],&bi109[0],&bi110[0],&bi111[0],&bi112[0],&bi113[0],
4189
+ &bi114[0],&bi115[0],&bi116[0],&bi117[0],&bi118[0],&bi119[0],
4190
+ &bi120[0],&bi121[0],&bi122[0],&bi123[0],&bi124[0],&bi125[0],
4191
+ &bi126[0],&bi127[0],&bi128[0],&bi129[0],&bi130[0],&bi131[0],
4192
+ &bi132[0],&bi133[0],&bi134[0],&bi135[0],&bi136[0],&bi137[0],
4193
+ &bi138[0],&bi139[0],&bi140[0],&bi141[0],&bi142[0],&bi143[0],
4194
+ &bi144[0],&bi145[0],&bi146[0],&bi147[0],&bi148[0],&bi149[0],
4195
+ &bi150[0],&bi151[0],&bi152[0],&bi153[0],&bi154[0],&bi155[0],
4196
+ &bi156[0],&bi157[0],&bi158[0],&bi159[0],&bi160[0],&bi161[0],
4197
+ &bi162[0],&bi163[0],&bi164[0],&bi165[0],&bi166[0],&bi167[0],
4198
+ &bi168[0],&bi169[0],&bi170[0],&bi171[0],&bi172[0],&bi173[0],
4199
+ &bi174[0],&bi175[0],&bi176[0],&bi177[0],&bi178[0],&bi179[0],
4200
+ &bi180[0],&bi181[0],&bi182[0],&bi183[0],&bi184[0],&bi185[0],
4201
+ &bi186[0],&bi187[0],&bi188[0],&bi189[0],&bi190[0],&bi191[0],
4202
+ &bi192[0],&bi193[0],&bi194[0],&bi195[0],&bi196[0],&bi197[0],
4203
+ &bi198[0],&bi199[0],&bi200[0],&bi201[0],&bi202[0],&bi203[0],
4204
+ &bi204[0],&bi205[0],&bi206[0],&bi207[0],&bi208[0],&bi209[0],
4205
+ &bi210[0],&bi211[0],&bi212[0],&bi213[0],&bi214[0],&bi215[0],
4206
+ &bi216[0],&bi217[0],&bi218[0],&bi219[0],&bi220[0],&bi221[0],
4207
+ &bi222[0],&bi223[0],&bi224[0],&bi225[0],&bi226[0],&bi227[0],
4208
+ &bi228[0],&bi229[0],&bi230[0],&bi231[0],&bi232[0],&bi233[0],
4209
+ &bi234[0],&bi235[0],&bi236[0],&bi237[0],&bi238[0],&bi239[0],
4210
+ &bi240[0],&bi241[0],&bi242[0],&bi243[0],&bi244[0],&bi245[0],
4211
+ &bi246[0],&bi247[0],&bi248[0],&bi249[0],&bi250[0],&bi251[0],
4212
+ &bi252[0],&bi253[0],&bi254[0],&bi255[0],&bi256[0],&bi257[0],
4213
+ &bi258[0],&bi259[0],&bi260[0],&bi261[0],&bi262[0],&bi263[0],
4214
+ &bi264[0],&bi265[0],&bi266[0],&bi267[0],&bi268[0],&bi269[0],
4215
+ &bi270[0],&bi271[0],&bi272[0],&bi273[0],&bi274[0],&bi275[0],
4216
+ &bi276[0],&bi277[0],&bi278[0],&bi279[0],&bi280[0],&bi281[0],
4217
+ &bi282[0],&bi283[0],&bi284[0],&bi285[0],&bi286[0],&bi287[0],
4218
+ &bi288[0],&bi289[0],&bi290[0],&bi291[0],&bi292[0],&bi293[0],
4219
+ &bi294[0],&bi295[0],&bi296[0],&bi297[0],&bi298[0],&bi299[0],
4220
+ &bi300[0],&bi301[0],&bi302[0],&bi303[0],&bi304[0],&bi305[0],
4221
+ &bi306[0],&bi307[0],&bi308[0],&bi309[0],&bi310[0],&bi311[0],
4222
+ &bi312[0],&bi313[0],&bi314[0],&bi315[0],&bi316[0],&bi317[0],
4223
+ &bi318[0],&bi319[0],&bi320[0],&bi321[0],&bi322[0],&bi323[0],
4224
+ &bi324[0],&bi325[0],&bi326[0],&bi327[0],&bi328[0],&bi329[0],
4225
+ &bi330[0],&bi331[0],&bi332[0],&bi333[0],&bi334[0],&bi335[0],
4226
+ &bi336[0],&bi337[0],&bi338[0],&bi339[0],&bi340[0],&bi341[0],
4227
+ &bi342[0],&bi343[0],&bi344[0],&bi345[0],&bi346[0],&bi347[0],
4228
+ &bi348[0],&bi349[0],&bi350[0],&bi351[0],&bi352[0],&bi353[0],
4229
+ &bi354[0],&bi355[0],&bi356[0],&bi357[0],&bi358[0],&bi359[0],
4230
+ &bi360[0],&bi361[0],&bi362[0],&bi363[0],&bi364[0],&bi365[0],
4231
+ &bi366[0],&bi367[0],&bi368[0],&bi369[0],&bi370[0],&bi371[0],
4232
+ &bi372[0],&bi373[0],&bi374[0],&bi375[0],&bi376[0],&bi377[0],
4233
+ &bi378[0],&bi379[0],&bi380[0],&bi381[0],&bi382[0],&bi383[0],
4234
+ &bi384[0],&bi385[0],&bi386[0],&bi387[0],&bi388[0],&bi389[0],
4235
+ &bi390[0],&bi391[0],&bi392[0],&bi393[0],&bi394[0],&bi395[0],
4236
+ &bi396[0],&bi397[0],&bi398[0],&bi399[0],&bi400[0],&bi401[0],
4237
+ &bi402[0],&bi403[0],&bi404[0],&bi405[0],&bi406[0],&bi407[0],
4238
+ &bi408[0],&bi409[0],&bi410[0],&bi411[0],&bi412[0],&bi413[0],
4239
+ &bi414[0],&bi415[0],&bi416[0],&bi417[0],&bi418[0],&bi419[0],
4240
+ &bi420[0],&bi421[0],&bi422[0],&bi423[0],&bi424[0],&bi425[0],
4241
+ &bi426[0],&bi427[0],&bi428[0],&bi429[0],&bi430[0],&bi431[0],
4242
+ &bi432[0],&bi433[0],&bi434[0],&bi435[0],&bi436[0],&bi437[0],
4243
+ &bi438[0],&bi439[0],&bi440[0],&bi441[0],&bi442[0],&bi443[0],
4244
+ &bi444[0],&bi445[0],&bi446[0],&bi447[0],&bi448[0],&bi449[0],
4245
+ &bi450[0],&bi451[0],&bi452[0],&bi453[0],&bi454[0],&bi455[0],
4246
+ &bi456[0],&bi457[0],&bi458[0],&bi459[0],&bi460[0],&bi461[0],
4247
+ &bi462[0],&bi463[0],&bi464[0],&bi465[0],&bi466[0],&bi467[0],
4248
+ &bi468[0],&bi469[0],&bi470[0],&bi471[0],&bi472[0],&bi473[0],
4249
+ &bi474[0],&bi475[0],&bi476[0],&bi477[0],&bi478[0],&bi479[0],
4250
+ &bi480[0],&bi481[0],&bi482[0],&bi483[0],&bi484[0],&bi485[0],
4251
+ &bi486[0],&bi487[0],&bi488[0],&bi489[0],&bi490[0],&bi491[0],
4252
+ &bi492[0],&bi493[0],&bi494[0],&bi495[0],&bi496[0],&bi497[0],
4253
+ &bi498[0],&bi499[0],&bi500[0],&bi501[0],&bi502[0],&bi503[0],
4254
+ &bi504[0],&bi505[0],&bi506[0],&bi507[0],&bi508[0],&bi509[0],
4255
+ &bi510[0],&bi511[0],&bi512[0],&bi513[0],&bi514[0],&bi515[0],
4256
+ &bi516[0],&bi517[0],&bi518[0],&bi519[0],&bi520[0],&bi521[0],
4257
+ &bi522[0],&bi523[0],&bi524[0],&bi525[0],&bi526[0],&bi527[0],
4258
+ &bi528[0],&bi529[0],&bi530[0],&bi531[0],&bi532[0],&bi533[0],
4259
+ &bi534[0],&bi535[0],&bi536[0],&bi537[0],&bi538[0],&bi539[0],
4260
+ &bi540[0],&bi541[0],&bi542[0],&bi543[0],&bi544[0],&bi545[0],
4261
+ &bi546[0],&bi547[0],&bi548[0],&bi549[0],&bi550[0],&bi551[0],
4262
+ &bi552[0],&bi553[0],&bi554[0],&bi555[0],&bi556[0],&bi557[0],
4263
+ &bi558[0],&bi559[0],&bi560[0],&bi561[0],&bi562[0],&bi563[0],
4264
+ &bi564[0],&bi565[0],&bi566[0],&bi567[0],&bi568[0],&bi569[0],
4265
+ &bi570[0],&bi571[0],&bi572[0],&bi573[0],&bi574[0],&bi575[0],
4266
+ &bi576[0],&bi577[0],&bi578[0],&bi579[0],&bi580[0],&bi581[0],
4267
+ &bi582[0],&bi583[0],&bi584[0],&bi585[0],&bi586[0],&bi587[0],
4268
+ &bi588[0],&bi589[0],&bi590[0],&bi591[0],&bi592[0],&bi593[0],
4269
+ &bi594[0],&bi595[0],&bi596[0],&bi597[0],&bi598[0],&bi599[0],
4270
+ &bi600[0],&bi601[0],&bi602[0],&bi603[0],&bi604[0],&bi605[0],
4271
+ &bi606[0],&bi607[0],&bi608[0],&bi609[0],&bi610[0],&bi611[0],
4272
+ &bi612[0],&bi613[0],&bi614[0],&bi615[0],&bi616[0],&bi617[0],
4273
+ &bi618[0],&bi619[0],&bi620[0],&bi621[0],&bi622[0],&bi623[0],
4274
+ &bi624[0],&bi625[0],&bi626[0],&bi627[0],&bi628[0],&bi629[0],
4275
+ &bi630[0],&bi631[0],&bi632[0],&bi633[0],&bi634[0],&bi635[0],
4276
+ &bi636[0],&bi637[0],&bi638[0],&bi639[0],&bi640[0],&bi641[0],
4277
+ &bi642[0],&bi643[0],&bi644[0],&bi645[0],&bi646[0],&bi647[0],
4278
+ &bi648[0],&bi649[0],&bi650[0],&bi651[0],&bi652[0],&bi653[0],
4279
+ &bi654[0],&bi655[0],&bi656[0],&bi657[0],&bi658[0],&bi659[0],
4280
+ &bi660[0],&bi661[0],&bi662[0],&bi663[0],&bi664[0],&bi665[0],
4281
+ &bi666[0],&bi667[0],&bi668[0],&bi669[0],&bi670[0],&bi671[0],
4282
+ &bi672[0],&bi673[0],&bi674[0],&bi675[0],&bi676[0],&bi677[0],
4283
+ &bi678[0],&bi679[0],&bi680[0],&bi681[0],&bi682[0],&bi683[0],
4284
+ &bi684[0],&bi685[0],&bi686[0],&bi687[0],&bi688[0],&bi689[0],
4285
+ &bi690[0],&bi691[0],&bi692[0],&bi693[0],&bi694[0],&bi695[0],
4286
+ &bi696[0],&bi697[0],&bi698[0],&bi699[0],&bi700[0],&bi701[0],
4287
+ &bi702[0],&bi703[0],&bi704[0],&bi705[0],&bi706[0],&bi707[0],
4288
+ &bi708[0],&bi709[0],&bi710[0],&bi711[0],&bi712[0],&bi713[0],
4289
+ &bi714[0],&bi715[0],&bi716[0],&bi717[0],&bi718[0],&bi719[0],
4290
+ &bi720[0],&bi721[0],&bi722[0],&bi723[0],&bi724[0],&bi725[0],
4291
+ &bi726[0],&bi727[0],&bi728[0],&bi729[0],&bi730[0],&bi731[0],
4292
+ &bi732[0],&bi733[0],&bi734[0],&bi735[0],&bi736[0],&bi737[0],
4293
+ &bi738[0],&bi739[0],&bi740[0],&bi741[0],&bi742[0],&bi743[0],
4294
+ &bi744[0],&bi745[0],&bi746[0],&bi747[0],&bi748[0],&bi749[0],
4295
+ &bi750[0],&bi751[0],&bi752[0],&bi753[0],&bi754[0],&bi755[0],
4296
+ &bi756[0],&bi757[0],&bi758[0],&bi759[0],&bi760[0],&bi761[0],
4297
+ &bi762[0],&bi763[0],&bi764[0],&bi765[0],&bi766[0],&bi767[0],
4298
+ &bi768[0],&bi769[0],&bi770[0],&bi771[0],&bi772[0],&bi773[0],
4299
+ &bi774[0],&bi775[0],&bi776[0],&bi777[0],&bi778[0],&bi779[0],
4300
+ &bi780[0],&bi781[0],&bi782[0],&bi783[0],&bi784[0],&bi785[0],
4301
+ &bi786[0],&bi787[0],&bi788[0],&bi789[0],&bi790[0],&bi791[0],
4302
+ &bi792[0],&bi793[0],&bi794[0],&bi795[0],&bi796[0],&bi797[0],
4303
+ &bi798[0],&bi799[0],&bi800[0],&bi801[0],&bi802[0],&bi803[0],
4304
+ &bi804[0],&bi805[0],&bi806[0],&bi807[0],&bi808[0],&bi809[0],
4305
+ &bi810[0],&bi811[0],&bi812[0],&bi813[0],&bi814[0],&bi815[0],
4306
+ &bi816[0],&bi817[0],&bi818[0],&bi819[0],&bi820[0],&bi821[0],
4307
+ &bi822[0],&bi823[0],&bi824[0],&bi825[0],&bi826[0],&bi827[0],
4308
+ &bi828[0],&bi829[0],&bi830[0],&bi831[0],&bi832[0],&bi833[0],
4309
+ &bi834[0],&bi835[0],&bi836[0],&bi837[0],&bi838[0],&bi839[0],
4310
+ &bi840[0],&bi841[0],&bi842[0],&bi843[0],&bi844[0],&bi845[0],
4311
+ &bi846[0],&bi847[0],&bi848[0],&bi849[0],&bi850[0],&bi851[0],
4312
+ &bi852[0],&bi853[0],&bi854[0],&bi855[0],&bi856[0],&bi857[0],
4313
+ &bi858[0],&bi859[0],&bi860[0],&bi861[0],&bi862[0],&bi863[0],
4314
+ &bi864[0],&bi865[0],&bi866[0],&bi867[0],&bi868[0],&bi869[0],
4315
+ &bi870[0],&bi871[0],&bi872[0],&bi873[0],&bi874[0]
4316
+ };
4317
+
4318
+ /// Help class to create and register tests
4319
+ class Create {
4320
+ public:
4321
+ /// Perform creation and registration
4322
+ Create(void) {
4323
+ int n = sizeof(bi)/sizeof(BoolInstr*);
4324
+ for (int i=0; i<n; i++) {
4325
+ std::string s = Test::str(i);
4326
+ if (i < 10) {
4327
+ s = "00" + s;
4328
+ } else if (i < 100) {
4329
+ s = "0" + s;
4330
+ }
4331
+ (void) new BoolExprInt(bi[i],s,0);
4332
+ (void) new BoolExprInt(bi[i],s,1);
4333
+ (void) new BoolExprVar(bi[i],s);
4334
+ }
4335
+ }
4336
+ };
4337
+
4338
+ Create c;
4339
+ //@}
4340
+ }
4341
+
4342
+ }}
4343
+
4344
+ // STATISTICS: test-minimodel