gecoder-with-gecode 0.9.0-x86-mswin32-60 → 0.9.1-x86-mswin32-60
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +6 -0
- data/README +1 -1
- data/THANKS +18 -0
- data/example/equation_system.rb +3 -1
- data/example/magic_sequence.rb +3 -1
- data/example/queens.rb +3 -1
- data/example/send_more_money.rb +24 -30
- data/example/send_most_money.rb +15 -26
- data/example/square_tiling.rb +3 -1
- data/example/sudoku-set.rb +3 -1
- data/lib/gecode.dll +0 -0
- data/lib/gecoder/bindings.rb +7 -5
- data/lib/gecoder/bindings/bindings.rb +8 -8
- data/lib/gecoder/interface.rb +4 -2
- data/lib/gecoder/interface/binding_changes.rb +1 -1
- data/lib/gecoder/interface/branch.rb +1 -1
- data/lib/gecoder/interface/constraints/bool_enum_constraints.rb +4 -4
- data/lib/gecoder/interface/constraints/bool_var_constraints.rb +2 -2
- data/lib/gecoder/interface/constraints/extensional_regexp.rb +1 -1
- data/lib/gecoder/interface/constraints/fixnum_enum_constraints.rb +2 -2
- data/lib/gecoder/interface/constraints/int_enum/extensional.rb +5 -5
- data/lib/gecoder/interface/constraints/int_enum_constraints.rb +4 -4
- data/lib/gecoder/interface/constraints/int_var_constraints.rb +2 -2
- data/lib/gecoder/interface/constraints/selected_set/select.rb +8 -8
- data/lib/gecoder/interface/constraints/set_enum/{select.rb → element.rb} +10 -10
- data/lib/gecoder/interface/constraints/set_enum_constraints.rb +5 -5
- data/lib/gecoder/interface/constraints/set_var_constraints.rb +2 -2
- data/lib/gecoder/interface/{model_sugar.rb → convenience.rb} +19 -4
- data/lib/gecoder/interface/enum_wrapper.rb +1 -1
- data/lib/gecoder/interface/{model.rb → mixin.rb} +93 -60
- data/lib/gecoder/interface/search.rb +23 -22
- data/lib/gecoder/version.rb +1 -1
- data/specs/branch.rb +5 -3
- data/specs/constraints/bool/boolean.rb +3 -1
- data/specs/constraints/bool/linear.rb +3 -1
- data/specs/constraints/bool_enum/bool_enum_relation.rb +3 -1
- data/specs/constraints/bool_enum/channel.rb +3 -1
- data/specs/constraints/fixnum_enum/element.rb +3 -1
- data/specs/constraints/int/arithmetic.rb +3 -1
- data/specs/constraints/int/channel.rb +3 -1
- data/specs/constraints/int/linear.rb +3 -1
- data/specs/constraints/int/linear_properties.rb +3 -1
- data/specs/constraints/int_enum/arithmetic.rb +3 -1
- data/specs/constraints/int_enum/channel.rb +3 -1
- data/specs/constraints/int_enum/count.rb +3 -1
- data/specs/constraints/int_enum/distinct.rb +3 -1
- data/specs/constraints/int_enum/element.rb +3 -1
- data/specs/constraints/int_enum/sort.rb +3 -1
- data/specs/constraints/property_helper.rb +10 -10
- data/specs/constraints/reification_sugar.rb +3 -1
- data/specs/constraints/selected_set/select.rb +6 -5
- data/specs/constraints/selected_set/select_properties.rb +12 -10
- data/specs/constraints/set/channel.rb +3 -1
- data/specs/constraints/set/domain.rb +4 -4
- data/specs/constraints/set/relation.rb +4 -4
- data/specs/constraints/set_enum/channel.rb +3 -1
- data/specs/constraints/set_enum/distinct.rb +3 -1
- data/specs/constraints/set_enum/{select.rb → element.rb} +13 -9
- data/specs/enum_wrapper.rb +1 -1
- data/specs/mixin.rb +78 -0
- data/specs/model.rb +5 -5
- data/specs/search.rb +20 -14
- data/specs/selected_set.rb +3 -3
- data/specs/set_elements.rb +2 -2
- data/tasks/distribution.rake +25 -4
- data/vendor/gecode/win32/lib/{libgecodeint.dll → libWindowsgecodeintWindows.dll} +0 -0
- data/vendor/gecode/win32/lib/{libgecodekernel.dll → libWindowsgecodekernelWindows.dll} +0 -0
- data/vendor/gecode/win32/lib/{libgecodeminimodel.dll → libWindowsgecodeminimodelWindows.dll} +0 -0
- data/vendor/gecode/win32/lib/{libgecodesearch.dll → libWindowsgecodesearchWindows.dll} +0 -0
- data/vendor/gecode/win32/lib/{libgecodeset.dll → libWindowsgecodesetWindows.dll} +0 -0
- data/vendor/gecode/win32/lib/{libgecodesupport.dll → libWindowsgecodesupportWindows.dll} +0 -0
- metadata +20 -17
- data/example/money.rb +0 -36
Binary file
|
Binary file
|
data/vendor/gecode/win32/lib/{libgecodeminimodel.dll → libWindowsgecodeminimodelWindows.dll}
RENAMED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gecoder-with-gecode
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.1
|
5
5
|
platform: x86-mswin32-60
|
6
6
|
authors:
|
7
7
|
- Gecode/R Development Team
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-08-
|
12
|
+
date: 2008-08-29 00:00:00 +02:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -22,17 +22,18 @@ extensions: []
|
|
22
22
|
extra_rdoc_files:
|
23
23
|
- README
|
24
24
|
- CHANGES
|
25
|
+
- THANKS
|
25
26
|
- LGPL-LICENSE
|
26
27
|
- lib/gecoder.rb
|
27
28
|
- lib/gecoder/bindings.rb
|
28
29
|
- lib/gecoder/interface/branch.rb
|
29
30
|
- lib/gecoder/interface/enum_matrix.rb
|
30
|
-
- lib/gecoder/interface/model_sugar.rb
|
31
31
|
- lib/gecoder/interface/search.rb
|
32
32
|
- lib/gecoder/interface/constraints.rb
|
33
|
+
- lib/gecoder/interface/convenience.rb
|
33
34
|
- lib/gecoder/interface/variables.rb
|
35
|
+
- lib/gecoder/interface/mixin.rb
|
34
36
|
- lib/gecoder/interface/enum_wrapper.rb
|
35
|
-
- lib/gecoder/interface/model.rb
|
36
37
|
- lib/gecoder/interface/constraints/set_var_constraints.rb
|
37
38
|
- lib/gecoder/interface/constraints/extensional_regexp.rb
|
38
39
|
- lib/gecoder/interface/constraints/selected_set_constraints.rb
|
@@ -75,8 +76,8 @@ extra_rdoc_files:
|
|
75
76
|
- lib/gecoder/interface/constraints/int_var_constraints.rb
|
76
77
|
- lib/gecoder/interface/constraints/reifiable_constraints.rb
|
77
78
|
- lib/gecoder/interface/constraints/set_enum/channel.rb
|
78
|
-
- lib/gecoder/interface/constraints/set_enum/select.rb
|
79
79
|
- lib/gecoder/interface/constraints/set_enum/distinct.rb
|
80
|
+
- lib/gecoder/interface/constraints/set_enum/element.rb
|
80
81
|
- lib/gecoder/interface/constraints/set_enum/operation.rb
|
81
82
|
- lib/gecoder/interface/binding_changes.rb
|
82
83
|
- lib/gecoder/version.rb
|
@@ -85,6 +86,7 @@ extra_rdoc_files:
|
|
85
86
|
files:
|
86
87
|
- README
|
87
88
|
- LGPL-LICENSE
|
89
|
+
- THANKS
|
88
90
|
- CHANGES
|
89
91
|
- COPYING
|
90
92
|
- Rakefile
|
@@ -92,12 +94,12 @@ files:
|
|
92
94
|
- lib/gecoder/bindings.rb
|
93
95
|
- lib/gecoder/interface/branch.rb
|
94
96
|
- lib/gecoder/interface/enum_matrix.rb
|
95
|
-
- lib/gecoder/interface/model_sugar.rb
|
96
97
|
- lib/gecoder/interface/search.rb
|
97
98
|
- lib/gecoder/interface/constraints.rb
|
99
|
+
- lib/gecoder/interface/convenience.rb
|
98
100
|
- lib/gecoder/interface/variables.rb
|
101
|
+
- lib/gecoder/interface/mixin.rb
|
99
102
|
- lib/gecoder/interface/enum_wrapper.rb
|
100
|
-
- lib/gecoder/interface/model.rb
|
101
103
|
- lib/gecoder/interface/constraints/set_var_constraints.rb
|
102
104
|
- lib/gecoder/interface/constraints/extensional_regexp.rb
|
103
105
|
- lib/gecoder/interface/constraints/selected_set_constraints.rb
|
@@ -140,8 +142,8 @@ files:
|
|
140
142
|
- lib/gecoder/interface/constraints/int_var_constraints.rb
|
141
143
|
- lib/gecoder/interface/constraints/reifiable_constraints.rb
|
142
144
|
- lib/gecoder/interface/constraints/set_enum/channel.rb
|
143
|
-
- lib/gecoder/interface/constraints/set_enum/select.rb
|
144
145
|
- lib/gecoder/interface/constraints/set_enum/distinct.rb
|
146
|
+
- lib/gecoder/interface/constraints/set_enum/element.rb
|
145
147
|
- lib/gecoder/interface/constraints/set_enum/operation.rb
|
146
148
|
- lib/gecoder/interface/binding_changes.rb
|
147
149
|
- lib/gecoder/version.rb
|
@@ -156,7 +158,6 @@ files:
|
|
156
158
|
- example/sudoku.rb
|
157
159
|
- example/square_tiling.rb
|
158
160
|
- example/example_helper.rb
|
159
|
-
- example/money.rb
|
160
161
|
- vendor/rust/bin
|
161
162
|
- vendor/rust/bin/cxxgenerator.rb
|
162
163
|
- vendor/rust/README
|
@@ -236,6 +237,7 @@ files:
|
|
236
237
|
- specs/distribution.rb
|
237
238
|
- specs/spec_helper.rb
|
238
239
|
- specs/int_var.rb
|
240
|
+
- specs/mixin.rb
|
239
241
|
- specs/enum_wrapper.rb
|
240
242
|
- specs/model.rb
|
241
243
|
- specs/set_var.rb
|
@@ -290,16 +292,16 @@ files:
|
|
290
292
|
- specs/constraints/operands.rb
|
291
293
|
- specs/constraints/set_enum
|
292
294
|
- specs/constraints/set_enum/channel.rb
|
293
|
-
- specs/constraints/set_enum/select.rb
|
294
295
|
- specs/constraints/set_enum/distinct.rb
|
296
|
+
- specs/constraints/set_enum/element.rb
|
295
297
|
- specs/constraints/set_enum/operation.rb
|
296
298
|
- specs/examples.rb
|
297
|
-
- vendor/gecode/win32/lib/
|
298
|
-
- vendor/gecode/win32/lib/
|
299
|
-
- vendor/gecode/win32/lib/
|
300
|
-
- vendor/gecode/win32/lib/
|
301
|
-
- vendor/gecode/win32/lib/
|
302
|
-
- vendor/gecode/win32/lib/
|
299
|
+
- vendor/gecode/win32/lib/libWindowsgecodesetWindows.dll
|
300
|
+
- vendor/gecode/win32/lib/libWindowsgecodekernelWindows.dll
|
301
|
+
- vendor/gecode/win32/lib/libWindowsgecodesupportWindows.dll
|
302
|
+
- vendor/gecode/win32/lib/libWindowsgecodeminimodelWindows.dll
|
303
|
+
- vendor/gecode/win32/lib/libWindowsgecodesearchWindows.dll
|
304
|
+
- vendor/gecode/win32/lib/libWindowsgecodeintWindows.dll
|
303
305
|
- lib/gecode.dll
|
304
306
|
has_rdoc: true
|
305
307
|
homepage: http://gecoder.rubyforge.org
|
@@ -343,6 +345,7 @@ test_files:
|
|
343
345
|
- specs/distribution.rb
|
344
346
|
- specs/spec_helper.rb
|
345
347
|
- specs/int_var.rb
|
348
|
+
- specs/mixin.rb
|
346
349
|
- specs/enum_wrapper.rb
|
347
350
|
- specs/model.rb
|
348
351
|
- specs/set_var.rb
|
@@ -387,7 +390,7 @@ test_files:
|
|
387
390
|
- specs/constraints/bool_enum/extensional.rb
|
388
391
|
- specs/constraints/operands.rb
|
389
392
|
- specs/constraints/set_enum/channel.rb
|
390
|
-
- specs/constraints/set_enum/select.rb
|
391
393
|
- specs/constraints/set_enum/distinct.rb
|
394
|
+
- specs/constraints/set_enum/element.rb
|
392
395
|
- specs/constraints/set_enum/operation.rb
|
393
396
|
- specs/examples.rb
|
data/example/money.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'gecoder'
|
3
|
-
|
4
|
-
solution = Gecode.solve do
|
5
|
-
# A helper to make the linear equation a bit tidier. Takes a number of
|
6
|
-
# variables and computes the linear combination as if the variable
|
7
|
-
# were digits in a base 10 number. E.g. x,y,z becomes
|
8
|
-
# 100*x + 10*y + z .
|
9
|
-
def equation_row(*variables)
|
10
|
-
variables.inject{ |result, variable| variable + result*10 }
|
11
|
-
end
|
12
|
-
|
13
|
-
# Set up the variables.
|
14
|
-
# Let "letters" be an array of 8 integer variables with domain 0..9.
|
15
|
-
# The elements represents the letters s, e, n, d, m, o, r and y.
|
16
|
-
letters_is_an int_var_array(8, 0..9)
|
17
|
-
s,e,n,d,m,o,r,y = letters
|
18
|
-
|
19
|
-
# Set up the constraints.
|
20
|
-
# The equation must hold.
|
21
|
-
(equation_row(s, e, n, d) + equation_row(m, o, r, e)).must ==
|
22
|
-
equation_row(m, o, n, e, y)
|
23
|
-
|
24
|
-
# The initial letters may not be 0.
|
25
|
-
s.must_not == 0
|
26
|
-
m.must_not == 0
|
27
|
-
|
28
|
-
# All letters must be assigned different digits.
|
29
|
-
letters.must_be.distinct
|
30
|
-
|
31
|
-
# Tell Gecode what variables we want to know the values of.
|
32
|
-
branch_on letters, :variable => :smallest_size, :value => :min
|
33
|
-
end
|
34
|
-
|
35
|
-
puts 's e n d m o r y'
|
36
|
-
puts solution.letters.values.join(' ')
|