diff --git a/examples/tictactoe/tictacteacher.py b/examples/tictactoe/tictacteacher.py index 00cc38edb72d4ff1564fe75d65821e2c4d1ae858..305228aa5cf8ac96f84dd3983d987ab4b1e0e9a4 100644 --- a/examples/tictactoe/tictacteacher.py +++ b/examples/tictactoe/tictacteacher.py @@ -51,7 +51,7 @@ class TicTacToeTeacher(AbstractTeacher): sys.exit() #self._socket.setblocking(0) - self._socket.settimeout(1) # 1 second timeout, for quiescence + self._socket.settimeout(0.5) # second timeout, for quiescence #logging.basicConfig(level=logging.DEBUG) logger = logging.getLogger(__name__) diff --git a/learning/learning.py b/learning/learning.py index 136d158d76c92c3a859c951941e414cfb0e1638f..7f25e5daa0f456a8c331ff0123aa274c32db2093 100644 --- a/learning/learning.py +++ b/learning/learning.py @@ -342,8 +342,6 @@ class LearningAlgorithm: self._teacher.getOutputAlphabet().copy(), self._teacher.getQuiescence(), chaos) - #if not chaos: - # print(rows) # assign to each equivalence class a state number # start with equivalence class of empty trace to 0 assignments = {():0} @@ -362,8 +360,6 @@ class LearningAlgorithm: for label in allLabels: # create row and search it in the table extension = row + (label,) - #if not chaos: - # print(extension) if self._table.isInRows(extension): for target in rows: found = False @@ -372,6 +368,7 @@ class LearningAlgorithm: if self._table._moreSpecificRow(extension, target, chaos): hyp.addTransition(assignments[row], label, assignments[target]) + found = True break if not found: diff --git a/systems/implementations.py b/systems/implementations.py index 1fcdedf8072a4426b22c1e94e2bbb227700fb69c..1f7c55ca8651c9c71c8a6dfd56942f5f0ec4644b 100644 --- a/systems/implementations.py +++ b/systems/implementations.py @@ -130,14 +130,14 @@ class InputOutputLTS(AbstractIOLTS): validState1 = state1 < self._numstates and state1 >= 0 validState2 = state2 < self._numstates and state2 >= 0 if validState1 and validState2: - if label in self._inputs or label in self._outputs: + #if label in self._inputs: #or label in self._outputs: key = (state1, label) if key in self._transitions.keys(): self._transitions[key].add(state2) else: self._transitions[key] = set([state2]) - else: - success = False + #else: + # success = False else: success = False return success diff --git a/tests/InputOutputLTS_test.py b/tests/InputOutputLTS_test.py index 8cefc56c282043ffe2dd5192f0630deb0707db78..daebeb4c76d377c19d21d0ac5d6174c4693a7086 100644 --- a/tests/InputOutputLTS_test.py +++ b/tests/InputOutputLTS_test.py @@ -48,7 +48,7 @@ class TestImplementations: success = I3.addTransition(1,'a',2) assert_equal(success, True) success = I3.addTransition(1,'c',2) - assert_equal(success, False) + assert_equal(success, True) success = I3.addTransition(-1,'a',2) assert_equal(success, False) success = I3.addTransition(1,'b',4)