/tutorial/backtracking/backtracking.txt
Plain Text | 68 lines | 51 code | 17 blank | 0 comment | 0 complexity | ad66979dfcc4ce6419e7e9de053271ef MD5 | raw file
1Tutorial of lib/backtracking 2############################ 3 4The cluster lib/backtracking provides a useful abstraction to implement 5all kinds of backtracking algorithms or and/or tree explorations. 6 7The tutorial backtracking/expand_expression 8=========================================== 9 10The main class, ABSTRACT_BACKTRACKING, 11implements the abstract algorithm that explore a virtual and/or tree. 12It defines the basic data used for the explorations and the way the exploration 13is done. The tutorial [expand_expression] shows its use. 14 15That tutorial expands the expressions that are entered at its input. 16Here is a short example. 17 18{{{{ 19> cd expand_expression/tree 20> se c -clean -o ee expand_expression 21> ./ee 22the(good+bad)(boy+girl) 23 (1) the good boy 24 (2) the good girl 25 (3) the bad boy 26 (4) the bad girl 27}}}} 28 29 30The tutorial backtracking/logigram 31================================== 32 33A tutorial that shows how to solve problems 34that sometimes are called logigrams. The logigrams 35are made of a set of items (persons, date, places, ...) 36grouped into categories and sets of true propositions 37about the items. From these propositions you must deduce 38how the given items are combined together. 39 40Here is an example: there are 3 women, Marie, Julie and Eve of 41the 19th century. We know that: 42 - The one who has no child was born in 1804 and she is not Marie. 43 - Julie doesn't have exactly one child and has less children than Marie. 44 - The one who had 2 children was not born in 1805 and she is not Eve. 45Which woman is born in 1806? How many children did she have? 46 47The tutorial backtracking/tiny_parse 48============================== 49 50WORK IN PROGRESS NOTHING TO SEE HERE 51 52The tutorial backtracking/tiny_prolog 53=============================== 54 55WORK IN PROGRESS NOTHING TO SEE HERE 56 57Some other examples 58=================== 59 60The cluster regular_expression uses the cluster bactracking. 61Just take a look at it. 62 63.end 64 65.def [[:upper:]_]\{2,\} <span class="class">&</span> 66.def {{{{ <pre> 67.def }}}} </pre> 68.def ^\.end <div class="sesign"><rule/>Copyright \© The SmartEiffel Team - <a href="mailto:SmartEiffel@loria.fr">\<SmartEiffel@loria.fr\></a></div>