stamina-core 0.5.1 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,16 @@
1
+ # 0.5.2 / 2012-02-25
2
+
3
+ * Bug fixes
4
+
5
+ * Fixed the decoration algorithm on non deterministic automata. Initial states
6
+ considered are only those explicitly marked as initial (:initial => true) and not
7
+ all states reached through epsilon symbols.
8
+
1
9
  # 0.5.1 / 2012-02-24
2
10
 
3
- * Bugfixes
11
+ * Bug fixes
4
12
 
5
- * Fixes external requires in the different gems (no such file to load sinatra)
13
+ * Fixed external requires in the different gems (no such file to load sinatra)
6
14
 
7
15
  # 0.5.0 / 2012-02-24
8
16
 
@@ -61,7 +61,7 @@ module Stamina
61
61
  (d0 <= d1 ? d0 : d1)
62
62
  end
63
63
  end
64
- algo.set_propagate {|d,e| d+1 }
64
+ algo.set_propagate{|d,e| d+1 }
65
65
  algo.execute(self, nil, 0)
66
66
  deepest = states.max do |s0,s1|
67
67
  # Here, we do not take unreachable states into account
@@ -53,13 +53,15 @@ module Stamina
53
53
 
54
54
  # Executes the propagation algorithm on a given automaton.
55
55
  def execute(fa, bottom, d0)
56
+ to_explore = []
57
+
56
58
  # install initial decoration
57
59
  fa.states.each do |s|
58
60
  s[@decoration_key] = (s.initial? ? d0 : bottom)
61
+ to_explore << s if s.initial?
59
62
  end
60
63
 
61
64
  # fix-point loop starting with initial states
62
- to_explore = fa.initial_states
63
65
  until to_explore.empty?
64
66
  source = to_explore.pop
65
67
  source.out_edges.each do |edge|
@@ -3,7 +3,7 @@ module Stamina
3
3
 
4
4
  MAJOR = 0
5
5
  MINOR = 5
6
- TINY = 1
6
+ TINY = 2
7
7
 
8
8
  def self.to_s
9
9
  [ MAJOR, MINOR, TINY ].join('.')
@@ -11,4 +11,4 @@ module Stamina
11
11
 
12
12
  end
13
13
  VERSION = Version.to_s
14
- end
14
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stamina-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-24 00:00:00.000000000 Z
12
+ date: 2012-02-25 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: quickl
16
- requirement: &70326370553740 !ruby/object:Gem::Requirement
16
+ requirement: &75683680 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,7 +21,7 @@ dependencies:
21
21
  version: 0.4.3
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70326370553740
24
+ version_requirements: *75683680
25
25
  description: ! "Stamina is an automaton and regular inference toolkit initially developped
26
26
  for the \nbaseline of the Stamina Competition (stamina.chefbe.net)."
27
27
  email:
@@ -32,36 +32,36 @@ extra_rdoc_files: []
32
32
  files:
33
33
  - LICENCE.md
34
34
  - CHANGELOG.md
35
- - lib/stamina-core/stamina/adl.rb
36
- - lib/stamina-core/stamina/automaton/complement.rb
37
- - lib/stamina-core/stamina/automaton/complete.rb
38
- - lib/stamina-core/stamina/automaton/compose.rb
39
- - lib/stamina-core/stamina/automaton/determinize.rb
40
- - lib/stamina-core/stamina/automaton/equivalence.rb
41
- - lib/stamina-core/stamina/automaton/hide.rb
42
- - lib/stamina-core/stamina/automaton/metrics.rb
43
- - lib/stamina-core/stamina/automaton/minimize/hopcroft.rb
44
- - lib/stamina-core/stamina/automaton/minimize/pitchies.rb
45
- - lib/stamina-core/stamina/automaton/minimize.rb
46
- - lib/stamina-core/stamina/automaton/strip.rb
47
- - lib/stamina-core/stamina/automaton/walking.rb
48
- - lib/stamina-core/stamina/automaton.rb
49
- - lib/stamina-core/stamina/command/adl2dot.rb
50
- - lib/stamina-core/stamina/command/help.rb
51
- - lib/stamina-core/stamina/command/robustness.rb
52
- - lib/stamina-core/stamina/command/run.rb
53
- - lib/stamina-core/stamina/command.rb
54
- - lib/stamina-core/stamina/core.rb
55
35
  - lib/stamina-core/stamina/dsl/automata.rb
56
36
  - lib/stamina-core/stamina/dsl/core.rb
37
+ - lib/stamina-core/stamina/command/help.rb
38
+ - lib/stamina-core/stamina/command/run.rb
39
+ - lib/stamina-core/stamina/command/robustness.rb
40
+ - lib/stamina-core/stamina/command/adl2dot.rb
41
+ - lib/stamina-core/stamina/automaton.rb
42
+ - lib/stamina-core/stamina/adl.rb
43
+ - lib/stamina-core/stamina/utils.rb
57
44
  - lib/stamina-core/stamina/dsl.rb
58
45
  - lib/stamina-core/stamina/engine/context.rb
59
- - lib/stamina-core/stamina/engine.rb
46
+ - lib/stamina-core/stamina/automaton/determinize.rb
47
+ - lib/stamina-core/stamina/automaton/minimize.rb
48
+ - lib/stamina-core/stamina/automaton/walking.rb
49
+ - lib/stamina-core/stamina/automaton/strip.rb
50
+ - lib/stamina-core/stamina/automaton/compose.rb
51
+ - lib/stamina-core/stamina/automaton/minimize/hopcroft.rb
52
+ - lib/stamina-core/stamina/automaton/minimize/pitchies.rb
53
+ - lib/stamina-core/stamina/automaton/complement.rb
54
+ - lib/stamina-core/stamina/automaton/hide.rb
55
+ - lib/stamina-core/stamina/automaton/equivalence.rb
56
+ - lib/stamina-core/stamina/automaton/metrics.rb
57
+ - lib/stamina-core/stamina/automaton/complete.rb
58
+ - lib/stamina-core/stamina/utils/decorate.rb
60
59
  - lib/stamina-core/stamina/errors.rb
61
- - lib/stamina-core/stamina/ext/math.rb
62
60
  - lib/stamina-core/stamina/markable.rb
63
- - lib/stamina-core/stamina/utils/decorate.rb
64
- - lib/stamina-core/stamina/utils.rb
61
+ - lib/stamina-core/stamina/ext/math.rb
62
+ - lib/stamina-core/stamina/core.rb
63
+ - lib/stamina-core/stamina/engine.rb
64
+ - lib/stamina-core/stamina/command.rb
65
65
  - lib/stamina-core/stamina/version.rb
66
66
  - lib/stamina-core/stamina-core.rb
67
67
  homepage: https://github.com/blambeau/stamina
@@ -84,7 +84,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
84
84
  version: '0'
85
85
  requirements: []
86
86
  rubyforge_project:
87
- rubygems_version: 1.8.10
87
+ rubygems_version: 1.8.15
88
88
  signing_key:
89
89
  specification_version: 3
90
90
  summary: Automaton and Regular Inference Toolkit