PageRenderTime 23ms CodeModel.GetById 17ms app.highlight 2ms RepoModel.GetById 2ms app.codeStats 0ms

/tutorial/backtracking/backtracking.txt

http://github.com/tybor/Liberty
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 \&copy; The SmartEiffel Team - <a href="mailto:SmartEiffel@loria.fr">\&lt;SmartEiffel@loria.fr\&gt;</a></div>