Kozen and Tiuryn have introduced the substructural logic $\mathsf{S}$ for reasoning about correctness of while programs (ACM TOCL, 2003). The logic $\mathsf{S}$ distinguishes between tests and partial correctness assertions, representing the latter by special implicational formulas. Kozen and Tiuryn's logic extends Kleene altebra with tests, where partial correctness assertions are represented by equations, not terms. Kleene algebra with codomain, $\mathsf{KAC}$, is a one-sorted alternative to Kleene algebra with tests that expands Kleene algebra with an operator that allows to construct a Boolean subalgebra of tests. In this paper we show that Kozen and Tiuryn's logic embeds into the equational theory of the expansion of $\mathsf{KAC}$ with residuals of Kleene algebra multiplication and the upper adjoint of the codomain operator.
翻译:Kozen 和 Tiuryn 引入了亚结构逻辑 $\ mathsf{S} $, 用于对程序正确性进行推理(ACM TOCL, 2003) 。 逻辑 $\ mathsf{S} 美元 区分了测试和部分正确性主张, 以特殊含意公式代表后者。 Kozen 和 Tiuryn 的逻辑以测试扩展 Kleene 代数, 其中部分正确性主张由方程式而非条件代表。 Kleene 代数与 codomain 相配, $\ mathsf{KAC} 是一个单数替代 Kleene 代数, 测试扩展 Kleene 代数, 与一个操作者进行扩展 Kleene algebra 的测试, 并允许构建测试的布尔亚值。 在本文中我们表明, Kozen 和 Tiuryn 的逻辑嵌入了 $\ mathfsf{KAC} $ 的方程理论, 和 Kleenelegebra 倍 倍倍倍倍增和 的顶部操作者的顶部接合。