有限状态机,其操作依赖于当前状态之前的状态



我遇到了一个状态机,它有以下问题:

State 1 ----transition 1---> State 2----transition 2---> State 3
State 4 ----transition 4---> State 2----transition 2---> State 3

转换1与操作1相关联。转换4与操作4相关联。然而,在设计完整个机器之后,我意识到转换2可能与动作2或动作3相关,这取决于状态2之前的状态是状态1还是状态4,因此是执行了动作1还是动作4。

我试着设计一个不同的设计,但无法做到。这也不是一个推动自动机。我该怎么做才能把它弄清楚呢

在我看来,你所说的是状态2实际上可以处于两种状态中的一种,在状态1或状态4之前。这对我来说,它实际上应该由两种状态表示,尽管两者都可以进入状态3。

所以,状态1 ->状态2 ->状态3,状态4 ->(新)状态5 ->状态3。

有什么理由你不能那样做吗?