Minimal and Complete Prefix Unification for Non-Classical Theorem Proving

Size: px
Start display at page:

Download "Minimal and Complete Prefix Unification for Non-Classical Theorem Proving"

Transcription

1 Forschungsbericht, Technische Hochschule Darmstadt, FB Informatik, FG Intellektik, Minimal and Complete Prefix Unification for Non-Classical Theorem Proving Jens Otten 1 Christoph Kreitz 2 1 Fachgebiet Intellektik, Fachbereich Informatik Technische Hochschule Darmstadt D Darmstadt, Germany 2 Fachbereich Mathematik und Informatik Martin Luther Universität Halle D Halle (Saale), Germany Abstract. For theorem proving in non-classical logics two similar approaches have been established: a matrix characterization of Wallen and Ohlbach s resolution calculus. In both cases the essential extension of the classical calculi is a need for unifying the so-called prefixes of atomic formulae or so-called world-paths respectively. We present a specialized string-unification algorithm which computes a minimal set of most general unifiers. By transforming systems of equations we obtain an elegant and efficient procedure which applies to intuitionistic logic and the modal logic S4. With some modifications it also applies to the modal logics D, K, D4, K4, S5, and T. We explain our method by an intuitive graphical illustration, prove termination, correctness, completeness, and minimality, and investigate its complexity. 1 Introduction Unification is one of the most central operations which are used to guide an efficient search for a formal proof of a theorem in classical predicate logic. Within theorem provers based on the connection method [5, 6, 9, 4], resolution [20, 27], the tableaux calculus [3, 2], and other calculi a unification algorithm is required for making certain atomic formulae complementary. Complementarity is a key concept in the characterization of logical validity. In classical logic two atomic formulae are called complementary if they have the same predicate symbol but different polarities (or signs) and if their sub-terms can be made identical by some first-order-substitution. This substitution encodes the fact that certain quantified variables occurring in the formula to be proven have to be instantiated by terms in order to complete the proof. It can be computed by well-known algorithms for term-unification such as the algorithm of Herbrand & Robinson [7, 20] or Martelli-Montanari [13]. If proof methods like the above shall be extended to non-classical logics such as modal logics or intuitionistic logic it is not sufficient to consider only the terms occurring in atomic formulae. In his matrix characterization of non-classical validity Wallen [25, 26] has shown that in addition the prefixes of atomic formulae (shortly atoms) need to be unified in order to make them complementary where

2 a prefix of an atom essentially describes its position in the formula tree. Similarly Ohlbach s resolution calculi for modal logics [14, 15] require a unification of world-paths which characterize the modal context of an atom in a formula. Both conditions are nearly identical and express the peculiarities and restrictions of these logics. In addition to the usual term unification, therefore, proof procedures for non-classical logics will have to incorporate a prefix unification algorithm. Formally, a prefix 1 of an atomic formula is a string over some alphabet A consisting of variables and constants. Two prefix strings s and t can be unified if there is a morphism σ which assigns a string to each variable such that σ(s)=σ(t). In contrast to the usual term substitution Wallen [26] calls this morphism σ a modal or intuitionistic substitution. Consider, for instance, the strings tabu lar and tast ef ul where capital letters indicate variables and small letters refer to constants. These two strings can be unified by applying the substitution σ = {U\ε, A\ea, R\ux, S\b, T \l, F \a, L\x} which yields tableaux in both cases. In general, unification with respect to some equational theory E can be considered as the following problem: given a set of equations Γ = {s 1 =t 1,.., s n =t n } one has to find a substitution σ which solves all these equations with respect to E, i.e. σ(s i ) = E σ(t i ) must hold for all i n. σ will be called a unifier for Γ. σ is a most general unifierif it is not an instance of some other unifier τ of Γ. An equational theory E is defined by some set of axioms which have to hold in addition to the usual laws of reflexivity, symmetry, and transitivity. In the case of string unification (the monoid problem or resolution problem for word equations) the only additional axiom is the associativity of string concatenation. An algorithm for enumerating the most general unifiers of a set of string equations has first been presented by Plotkin [19]. For the special case when every variable occurs at most twice a simple procedure for deciding whether a set of string equations has a unifier or not has been described in [12, 24] whereas Makanin [10, 11, 1] has developed a general algorithm for finding minimal and complete sets of unifiers. This algorithm has been improved and generalized in [22, 8, 23]. In general, however, the number of most general unifiers of a set of arbitrary string equations is infinite. For Γ = {ax=xa}, for instance, the set of most general unifiers is {σ σ(x) = a i, i IN 0 }. This fact severely limits the practical usefulness of the above algorithms in theorem proving applications. Fortunately, there are certain restrictions on the prefixes of atomic formulae which drastically simplify the unification problem for prefix strings. Prefixes describing the position of an atom in a formula tree are necessarily strings without duplicates. Furthermore two prefixes to be unified correspond to the positions of two atoms in the same formula. Thus equal characters can occur only within a common substring at the beginning of the two prefixes. These requirements, which we shall call tree-string property or shortly T-string property, allow us to develop a much more efficient algorithm for unifying prefix strings. Since two prefixes contain no common variables except for some identical substring at their beginning one only has to unify the variables occurring in one string with sub- 1 In the rest of this paper we shall follow Wallen s terminology and notation. 2

3 strings of the other and vice versa. The number of most general unifiers will be finite although it may still grow exponentially with the length of the prefixes. During T-string unification it may become necessary to consider additional variables. The strings ax and Y b, for instance, can be unified not only by σ 1 = {Y \a, X\b} but also by σ 2 = {Y \ac, X\cb}, σ 3 = {Y \acd, X\cdb}, and so on. None of these substitutions can be considered most general since they are all instances of σ = {Y \az, X\Zb} where Z is a new variable. This fact is illustrated by the following diagram and has to be taken into account during T-string unification. Z {}}{ a X Y b }{{} Z The unification algorithm which we shall present in this paper computes for any set of equations Γ = {s 1 =t 1,.., s n =t n } where all possible pairs of strings satisfy the T-string property a minimal set of most general unifiers. The algorithm proceeds by transforming a set of equations in a way similar to Martelli & Montanari s algorithm for term-unification [13]. For this purpose it uses transformation rules which step-wisely convert the set of equations into a set of substitutions which eventually will become the set of most general unifiers. This makes it possible to give an elegant description of our procedure and to adopt it to different modal logics by simple modifications of its transformation rules. In the following section we shall briefly introduce all the mathematical preliminaries of T-string unification. Section 3 describes a general unification algorithm which can be used in proof procedures for intuitionistic logic and the modal logic S4. We shall present its transformation rules and investigate its computational complexity. In section 4 we shall then study T-string unification for various other modal logics while section 5 presents an implementation of our algorithm. We conclude with a brief comparison with other approaches and remarks on possible applications and further investigations. 2 Preliminaries In this section we shall briefly describe the basic concepts which are necessary for describing and investigating our T-string unification procedure. Definition 1 (Strings). Let V be a set of variables and C a set of constants with V C =. A string is a word over the alphabet A = V C. The empty string is denoted by ε. The set of strings over the alphabet A is denoted by A. For a given string s the length of s is denoted by s and the character at position i by s i. The concatenation of the strings s and t is denoted by s t (briefly st). Example 1. Let V = {A, B, C,..., Z} and C = {a, b, c,..., z}. Then tabular and tast ef ul are strings over V C. 3

4 The strings we intend to unify shall be used to represent the positions of atomic formulae within a formula tree. As such they satisfy certain restrictions which we call the T-string property (i.e. formula tree string -property). Informally two strings s and t have the T-string property, if and only if 1. no character occurs twice in s (nor in t), and 2. equal characters occur only at the beginning of s and t. A set of strings S has the T-string property iff each pair of strings in S has the T-string property. Definition 2 (T-string property). Let s and t be strings over an alphabet A. s and t have the T-string property iff 1. s i s j for all 1 i, j s with i j and t i t j for all 1 i, j t with i j, and 2. There is some index 0 j min( s, t ) such that s i =t i for all 1 i j and s i1 t i2 for all j<i 1 s and j<i 2 t. A set of strings S = {s 1,..., s m }, where m 2, has the T-string property iff all pairs of strings s i and s j with 1 i, j m have the T-string property. The strings s i S are called T-strings. Remark 1. The prefixes in Wallen s matrix characterization have exactly these attributes, since they are defined as branches in a formula tree. Example 2. The strings tabular and tast ef ul have the T-string property. Definition 3 (Substitution). A substitution σ : V (V C) is a mapping from the set of variables to the set of strings over V C, which is almost everywhere (i.e. except for finitely many elements) the identity mapping. The application σ(t) of a substitution σ to a string t leads to the string t where the variables in t are replaced by their values under σ. Remark 2. As usual we shall denote a substitution σ by a set of variable/string pairs, i.e. by the set {x\s σ(x)=s x s}. Example 3. Let V and C defined as above. Then σ = {U\ε, A\ea, R\Ux} is a substitution. Its application to the string tabu lar yields σ(tabu lar) = tableau x. Definition 4 (Composition of substitutions). The composition τ(σ) of two substitutions σ and τ is defined by the composition of the corresponding functions, i.e. by τ(σ) = {x\τ(t) x\t σ x τ(t)} {x\s x\s τ t A : x\t σ}. A substitution σ is called idempotent if σ(σ) = σ. Example 4. Let σ = {U\ε, A\ea, R\Ux} and τ = {U\v, A\b, C\De}. The composition ρ = τ(σ) results in ρ = {U\ε, A\ea, R\vx, C\De}. The substitution τ is idempotent but σ is not since σ(σ) = {U\ε, A\ea, R\x} Remark 3. From now on we shall always deal with idempotent substitutions. 4

5 Definition 5 (Instance of a substitution). A substitution ρ is called an instance of a substitution σ (or σ is more general than ρ), iff there is substitution τ with ρ = τ(σ). Remark 4. Every substitution σ is an instance of itself since σ = τ(σ) for τ =. Example 5. In example 4 the substitution ρ is an instance of σ, since ρ = τ(σ). With the above notions we can now define unifiers and most general unifiers. Our definitions correspond to concepts introduced e.g. in [26, 14, 21]. Definition 6 (T-Unifier). Let Γ = {s i =t i i=1,.., n} be a system of equations for T-strings such that the set S = {s i i=1,.., n} {t i i=1,.., n} has the T-string property. A substitution σ T-unifies Γ iff σ(s i )=σ(t i ) for every equation s i =t i in Γ. σ is called a T-unifier for Γ. Example 6. σ = {U\ε, A\ea, R\ux, S\b, T \l, F \a, L\x} is a T-unifier for the set Γ = {tabular=tast ef ul} since σ(tabular) = σ(tast ef ul) = tableaux. Definition 7 (Most General T-Unifiers). Let Γ = {s i =t i i=1,.., n} be a system of equations of T-strings. A set Σ of substitutions is called a (minimal) set of most general T-unifiers for Γ, denoted by mgu(γ ), if the following properties hold: 1. Every substitution σ Σ is a T-unifier for Γ. (Correctness) 2. Every T-unifier τ for Γ is an instance of some σ Σ. (Completeness) 3. No σ Σ is an instance of another substitution σ Σ. (Minimality) An element of mgu(γ ) is called a most general T-unifier for Γ. 3 T-String-Unification for Intuitionistic Logic In this section we present a general method for computing the set of most general T-unifiers. This method can be used to unify prefixes in proof search procedures for the intuitionistic logic J [16]. Because of a close relationship between J and the modal logic S4 it can also be used to guide proof search in S4. The method is general in the sense that there are no restrictions for the computed unifier: variables may be instantiated by arbitrary strings including the empty string. This property follows from the fact that the accessibility relation of the modal logic S4 is reflexive and transitive (see [26] for a detailed discussion). After examining the decidability of T-string-unification we shall give an intuitive graphical illustration of a method for computing T-unifiers. We shall then present a formal description of our technique which operates by transforming systems of equations according to given transformation rules. We prove termination, correctness, completeness, and minimality of our unification procedure, and investigate its complexity. 5

6 3.1 Decidability For two T-strings s and t, i.e. for the equation system {s=t}, there is a simple way for deciding whether there exists a T-unifier or not. Since a common substring at the beginning of s and t does not matter it may safely be eliminated and we only have to consider T-strings whose first characters are different. Obviously such strings cannot be unified if they both begin with a constant. Because of the T-string property unification is also impossible if they both end with a constant. Thus two T-strings can only be unified if they are both empty, if the first character of one string and the last character of the other are variables, or if one string begins and ends with a variable while the other begins and ends with a constant. Two empty T-strings s and t can be unified by the empty substitution. As illustratet below, it is also easy to construct a most general unifier if the first character of s and the last character of t are variables (or vice versa). s t t In the third case let us assume that the first and last characters of s are variables and that the first and last characters of t are constants. If s contains only variable then s and t can be unified by σ = {s 1 \t, s 2 \ε,..., s s \ε} which also includes the case t = ε. Otherwise t must contain at least one variable, say t j and we may construct a unifier according to the following picture. s 1... s s t 1... t j... t t Lemma 1 summarizes the above insights as a collection of simple syntactical conditions for the existence of T-unifiers for a given pair of T-strings. Lemma 1 (Decidability of T-string-unification). Let s and t be two strings over the alphabet V C which have the T-string property. Furthermore let u be the common string at the beginning of s and t, i.e. s =us and t =ut for some T-strings s and t with s 1 t 1. There is a T-unifier for the equation {s =t } if and only if 1. s = ε and t = ε, or 2. s 1 V and t t V, or 3. s s V and t 1 V, or 4. s 1 V and s s V and if s i C for some i then t j V for some j, or 5. t 1 V and t t V and if t i C for some i then s j V for some j. Proof (of lemma). Analyze all possible combinations of variables and constants within the strings s and t. The five cases describe all the combinations where unification is possible. In all other cases s and t cannot be unified. 6

7 Theorem 1 (Complexity of Decidability). The existence of a T-unifier for the equation s=t, where s and t are T-strings, can be decided in time O( s + t ). Proof (of theorem). The five conditions mentioned in lemma 1 can be checked in linear time with respect to the length of s and t. 3.2 A Graphical Representation While analyzing the existence of a T-unifier σ for a given pair of T-strings we have used a graphical illustration for constructing σ. This illustration gives rise to a graphical method for generating a complete and minimal set of most general T-unifiers for a given equation of T-strings. It is somewhat similar to Makanin s notion of an equation with scheme [10, 11] and will lead to a detailed description of our unification procedure in section 3.3. Example 7. The strings s=abcdef and t=abghij fulfill the T-string property. If we want to unify them (i.e. find a most general T-unifier for {s=t}) we have to look for a mapping which assigns a substring of t to each variable in s and vice versa. We can represent this mapping by the following scheme: a B c D E f a B G }{{} h i }{{} J X Y The T-unifier derived from this scheme is σ 1 = {G\cX, D\X hiy, J\Y Ef} where X and Y are new variables which do not occur in the strings s or t. It is necessary to introduce these variables in order to obtain a most general T-unifier since σ = {G\c, D\hi, J\Ef} is not a most general T-unifier but only an instance of σ 1. Thus for constructing all T-unifiers we only have to consider all possible correct schemes. In general we have to perform the following steps in order to get a scheme representation of the most general T-unifiers for a T-string equation s=t: We start by writing down the first string s in a way such that constants will receive a small slot and variables will receive a large slot. 2 In the row below we write down the second string t such that 1. equal characters at the beginning of s and t appear in the same column, 2. a constant occurs only within the range of a variable (except for constants in the common substring at the beginning) and 3. the range of each variable may be stretched arbitrarily so that it may overlap with a variable of the first string. In the first row (of the second string) we begin by stretching the variables as little as possible. Below we will then systematically enumerate all the possibilities for extending the range of one or more variables. Each of these rows (except the one representing the first string) represents a most general T-unifier and each most general T-unifier is represented by one row of the scheme. 2 Technically it suffices to reserve a slot of the size of the second string t. 7

8 Example 8. Continuing our previous example and applying this technique to unify the strings s=abcdef and t=abghij we get the following scheme: a B c D E f a B G h i J a B G h i J a B G h i J Given such a graphical scheme the unifier of s and t implicitly contained in each row can easily be computed: 1. Constants and variables occuring in the range of a variable will assigned to this variable and 2. new variables will have to be generated and assigned accordingly if two variables of s and t overlap. Performing this final step will lead to the desired set of most general T-unifiers for the equation {s=t}. Example 9. According to the scheme in example 8 we compute the following set of most general unifiers for the T-strings s=abcdef and t=abghij: σ 0 = {G\cX, D\X h, E\iY, J\Y f} σ 1 = {G\cX, D\X hiy, J\Y Ef} σ 2 = {G\cDX, E\X hiy, J\Y f} where X and Y are new variables. (first row), (second row), and (third row) 3.3 Transforming Equations The intuitive graphical technique given above should be sufficient to understand the following formalized method for T-string-unification. Rather than by giving a recursive algorithm we consider the process of unification as a sequence of transformations on systems of equations. This concept is similar to the ideas of Martelli & Montanari ([13], see also [14, 21]). To keep our notation simple we divide our system of equations into an unsolved part Γ that initially contains the equations to be solved, and into a solved part σ which represents a substitution. We start with a given system Γ = {s i =t i i=1,.., n} of equations and an empty substitution σ = and stop with an empty system of equations Γ = and a substitution σ = {x j \t j j = 1,.., m} representing an idempotent most general T-unifier. Each transformation step replaces a tuple Γ, σ by a modified tuple Γ, σ. The algorithm is described by a set of transformation rules which can be applied nondeterministically to the actual equation system. For technical reasons we divide the right part t of each equation into two parts t 1 and t 2. That is, we consider equations of the form s i =t 1 i t2 i and start with the slightly modified equation system Γ = {s i =ε t i i=1,.., n}. As in the graphical representation of our method the vertical bar between the two parts represents the end of a substring t 1 i which will be assigned to a variable V at 8

9 the beginning of s i. Some transformation rules (e.g. R5, R7, and R9 in table 1) can be used to perform this assignment and remove t 1 i and V from the equation under consideration while others (e.g. R10) move the vertical bar in order to create alternatives. A sequence of transformations is successful if it transforms Γ into an empty set of equations and a substitution σ. Thus each successful chain of transformations corresponds to exactly one (most general and idempotent) T-unifier σ for Γ. An algorithm which nondeterministically selects equations from Γ and transformation rules to be applied to a selected equation will therefore be able to generate all of them. In the following we shall first formalize the general transformation algorithm which operates independently of the actual set of transformation rules and specify the transformation rules for intuitionistic logic afterwards. Definition 8 (Transformation Algorithm). Let Γ = {s i =ε t i i=1,.., n} be a system of equations where the s i, t i are T- strings over an alphabet V C. Let σ= and let T = {Π i i, Θ i i = 1,.., k} be a set of transformation rules. The general transformation algorithm computing a set of most general T-unifiers for Γ w.r.t. T is defined in figure 1. The set of T-unifiers generated by the algorithm consists of the substitutions resulting from all successfully completed transformations. while Γ do a. select the leftmost equation s=t from Γ b. set Γ to Γ \ {s=t} c. select a transformation rule Π, Θ from T which is applicable to {s=t}; if no rule is applicable then stop with failure d. apply the rule Π, Θ to {s=t} let, Θ be the result of this transformation e. apply the substitution Θ to Γ and σ (compute Γ :=Θ (Γ ) and σ:=θ (σ)) f. set Γ to Γ ; set σ to σ Θ stop with success and return σ. Fig. 1. General Transformation Algorithm for T-string Unification Remark 5. The selection of an equation in step a. could have been done arbitrarily. The algorithm will, however, be more comprehensible if we make this choice systematically and first solve one equation before considering the next one. The T-string-unification algorithm for intuitionistic logic is defined by the above general algorithm and the set of transformation rules for J. Definition 9 (Transformation Rules for J ). Let V be a set of Variables, C a set of Constants and V a set of auxiliary variables with V V =. The set T of transformation rules for the intuitionistic logic J consists the 10 rules defined in table 1. 9

10 R1. {ε = ε ε} {}, {} R2. {ε = ε t + } {t + = ε ε}, {} R3. {Xs = ε Xt} {s = ε t}, {} R4. {Cs = ε V t} {V t = ε Cs}, {} R5. {V s = z ε} {s = ε ε}, {V \z} R6. {V s = ε C 1 t} {s = ε C 1 t}, {V \ε} R7. {V s = z C 1C 2t} {s = ε C 2t}, {V \zc 1} R8. {V s + = ε V 1 t} {V 1 t = V s + }, {} R9. {V s + = z + V 1t} {V 1t = V s + }, {V \z + V } R10. {V s = z Xt} {V s = zx t}, {}, (V X, and s=ε or t ε or X C) s, t and z denote (arbitrary) strings and s +, t +, z + non-empty strings. X, V, V 1, C, C 1 and C 2 denote single characters with X V C V, V, V 1 V V (with V V 1), and C, C 1, C 2 C. V V is a new variable which does not occur in the substitution σ computed so far. Table 1. Transformation Rules for Intuitionistic Logic All transformation rules analyze the first character (if there is any) of the left hand side of an equation s i =t 1 i t2 i and the second part of its right hand side which corresponds to the substring not yet investigated. The rule R1 unifies two empty strings and is the only rule which eventually removes an equation from Γ. The rules R2, R4, and R8 allow to exchange the role of s i and t i whenever t 1 i is empty (which means that t i does not contain a substring already analyzed) but prevent the algorithm from inverting this exchange in the following step. R3 eliminates equal characters at the begining of two T-strings. R5, R6, R7, and R9 generate a substitution which assigns a substring of t i to the variable at the beginning of s i. Finally, R10 can be used to move the vertical bar through t i (i.e. to expand the substring t 1 i already investigated) in order to create alternatives. Example 10. Consider the equation system Γ = {abcdef =ε abghij} from example 8. We explain the unification algorithm by a successive application of transformation rules starting with Γ and σ=. According to our algorithm we always select the first equation of Γ. We shall write Γ, σ Ri Γ, σ to denote that applying rule Ri to Γ (and σ) leads to the modified system Γ and the modified substitution σ. In the process we shall use X, Y as auxiliary variables. During the first three steps the transformation is straightforward. {abcdef=ε abghij}, {} R3 {BcDEf=ε BGhiJ}, {} R3 {cdef=ε GhiJ}, {} R4 {GhiJ=ε cdef}, {} Now two rules (R6 and R10) are applicable. We first consider R6 and then R R6 {hij=ε cdef}, {G\ε} R10 {GhiJ=c DEf}, {} Again there are two possibilities (R9 and R10): (no transformation rule applicable) 10

11 R9 (a) {DEf=X hij}, {G\cX } R7 i. {Ef=ε ij}, {G\cX, D\X h} R6 A. {f=ε ij}, {G\cX, D\X h, E\ε} ii. (b) R10 R10 B. {Ef=i J}, {G\cX, D\X h} R9 {J=Y f}, {G\cX, D\X h, E\iY } R10 {J=Y f ε}, {G\cX, D\X h, E\iY } R5 {ε=ε ε}, {G\cX, D\X h, E\iY, J\Y f} R1 {}, {G\cX, D\X h, E\iY, J\Y f} σ 0 R10 {DEf=X h ij}, {G\cX } R10 {DEf=X hi J}, {G\cX } R9 {J=Y Ef}, {G\cX, D\X hiy } R10 {J=Y E f}, {G\cX, D\X hiy } R10 {J=Y Ef ε}, {G\cX, D\X hiy } R5 {ε=ε ε}, {G\cX, D\X hiy, J\Y Ef} R1 {}, {G\cX, D\X hiy, J\Y Ef} σ 1 {GhiJ=cD Ef}, {} R9 i. {Ef=X hij}, {G\cDX } R7 A. {f=ε ij}, {G\cDX, E\X h} R10 B. {Ef = X h ij}, {G\cDX } R10 {Ef=X hi J}, {G\cDX } R9 {J=Y f}, {G\cDX, E\X hiy } R10 {J=Y f ε}, {G\cDX, E\X hiy } R5 {ε=ε ε}, {G\cDX, E\X hiy, J\Y f} R1 {}, {G\cDX, E\X hiy, J\Y f} σ 2 R10 ii. {GhiJ=cDE f}, {} R10 {GhiJ=cDEf ε}, {} R5 {hij=ε ε}, {G\cDEf} As a result we get three most general T-unifiers σ 0, σ 1, σ 2 which are identical with the ones evaluated with the graphical method in the previous subsection. Remark 6. If we use a T-string-unification algorithm within a proof procedure we can replace the auxiliary variables by the empty string after unification, i.e. we apply the substitution {V \ε V V } to each calculated most general T-unifier. 3.4 Termination, Correctness, Completeness, and Minimality In the following we prove termination, correctness, completeness, and minimality of T-string-unification for intuitionistic logic. We begin by showing that applying a most general T-unifier preserves the T-string property of a given set of strings. 11

12 Lemma 2 (Preservation of the T-String Property). Let Γ = {s 1 =t 1,..., s n =t n } be a system of equations such that the set S = {s i i=1,.., n} {t i i=1,.., n} has the T-string property and let σ be a most general T-unifier for {s 1 =t 1 }. Then the set σ(s):={σ(u) u S} also fulfills the T-string property. Proof (of lemma). We can represent the elements of S as branches of a tree which splits if the elements become different. If we unify the two branches corresponding to s 1 and t 1, the result will still be a tree since all the additional variables we may insert are unique. Because of lemma 2 we can restrict ourselves to unifying systems containing only a single equation s=t instead of having to unify a larger system Γ all at once. After solving the first equation we may choose the next equation and so on since the strings of each equation fulfill the T-string property under the computed substitution. This insight will drastically simplify the proofs of termination, correctness, completeness, and minimality. Theorem 2 (Termination of T-String-Unification). Let Γ ={s=ε t} be an equation of T-strings. Then the T-string-unification algorithm for intuitionistic logic terminates on Γ. Proof (of theorem). We define a well-ordered relation < T between systems of equations and show that after applying at most two transformation rules to a system Γ the property Γ < T Γ holds between Γ and the resulting system Γ. The system ordering < T is defined as a relation on equation systems Γ 1 = {s 1 =z 1 t 1 } and Γ 2 = {s 2 =z 2 t 2 } in the following way: s 1 z 1 t 1 < s 2 z 2 t 2, or Γ 1 < T Γ 2 s 1 z 1 t 1 = s 2 z 2 t 2 and z 1 > z 2, or Γ 1 ={} and Γ 2 ={ε=ε ε}. Let Γ ={s=z t} be a system of equations, Ri be a transformation rule which applies to Γ, and, Θ be the result of this transformation. We distinguish three cases: 1. If Ri is one of the rules R1, R3, R5, R6, R7, R8, R9, or R10 we immediately get < T Γ. 2. If Ri is R2 then Γ must have the form {ε = ε Xs} where X is a single character and s is an arbitrary string. Thus the result is {Xs = ε ε} and the only transformation rule which can be applied to (if there is any) is R5. Applying R5 yields = {s = ε ε} and we get < T Γ. 3. If Ri is R4 then only R6, R7 or R10 can be applied to the result. For the resulting equation system we can again conclude < T Γ. Since there are only 10 (i.e. finitely many) transformation rules which could be applied in each step to a system Γ and the relation < T is well-ordered, every transformation chain will be finite. 12

13 Because of theorem 2 we know that applying the general transformation algorithm (figure 1) together with the set of transformation rules presented in table 1 to an arbitrary system Γ of T-string equations will always yield a substitution σ. Since the algorithm is nondeterministic its application to Γ defines a set of possible substitutions. We shall denote this set by mgu T (Γ ) and prove that it is in fact a complete and minimal set of most general unifiers for Γ. Definition 10 (Result mgu T of T-String-Unification). Let Γ be a system of equations. mgu T (Γ ) denotes the set of substitutions which is computed by the T-string-unification algorithm for intuitionistic logic. Theorem 3 (Correctness of T-String-Unification). Let Γ ={s=ε t} be an equation of T-strings. Then mgu T (Γ ) is correct, i.e. each σ mgu T (Γ ) is a T-unifier for Γ. Proof (of theorem). Let k(γ ) denote the greatest number of rule applications until the T-string-unification algorithm terminates on Γ. We prove the theorem by induction and show that mgu T (Γ ) is correct for each equation system Γ with n=k(γ ). For n=1 we have Γ = {ε=ε ε} since R1 always has to be applied last. As result we obtain the substitution σ={} which is a correct T-unifier for Γ. Let Γ = {s=z t} with k(γ ) = n+1 and σ mgu T (Γ ). Let Ri be the transformation rule which had been applied to {s=z t} in order to compute σ and ={s =z t }, Θ be the result of this application. Then σ must have been computed as σ = Θ Θ (σ ) for some σ mgu T ( ). By the induction hypothesis mgu T ( ) is correct for (since k( ) = n) and σ is a T-unifier for Delta. By analyzing the transformation rules in table 1 we can show that σ (s ) = σ (z t ) induces (Θ Θ (σ ))(s) = (Θ Θ (σ ))(z t) in all possible cases. Thus σ must be a T-unifier for Γ. Theorem 4 (Completeness of T-String-Unification). Let Γ ={s=ε t} be an equation of T-strings. Then mgu T (Γ ) is complete, i.e. each T-unifier of Γ is an instance of some σ mgu T (Γ ). Proof (of theorem (sketch). If we investigate the pattern of a string assigned to a variable we can determine that they must have a certain form. For example auxiliary variables may only occur at the beginning or at the end of such a string. By examining all these possibilities we can verify that each such assignment can be calculated by the T-string-unification algorithm. Theorem 5 (Minimality of T-String-Unification). Let Γ ={s=ε t} be an equation of T-strings. Then mgu T (Γ ) is minimal, i.e. no substitution σ mgu T (Γ ) is an instance of another substitution σ mgu T (Γ ). Proof (of theorem (sketch). We show that the application of different rules to a system Γ = {s=z t} yields different assignments to at least one variable such that the assignments are not an instance of each other. 13

14 If one of the rules R1 to R5 is applicable to Γ then no other rule will can be applied and the behavior of the T-string unification algorithm will be deterministic. If one of the rules R6 to R10 is applicable to Γ then Γ has the form {V s=z t} and another rule may be applicable as well. Thus all different substitutions computed by the algorithm originate from applying different rules among the rules R6 to R10. By a complete case analysis it can be verified that the application of different rules must lead to entirely different assignments of strings to the variable V (this is obvious when comparing R6 and R7 or R6 and R9 but rather lengthy in other cases). Therefore none of the computed substitutions are instances of each other. 3.5 Complexity While proving the termination of the T-string-unification algorithm (theorem 2) we have shown that each most general unifier for two T-strings s and t can be computed in O( s t 2 ) steps. Thus the complexity of the unification process is essentially determined by the number of most general unifiers to be computed. As mentioned before this number is finite but can be extremely large. Theorem 6 (Number of Most General T-Unifiers). In the worst case the number of most general T-unifiers for s and t can be 1 (2n)! 22n 2 O( n ), where n = max( s, t ). 2 (n!) Proof (of theorem). In the worst case one string contains only variables and the other only constants (constants in the first string require variables in the other but a variable in the second string will lead to a more general T-unifier). In this case unification is the same as matching and we have to consider every possible assignment of constant strings to variables. This number is equal to the number of possibilities for selecting n elements out of 2n 1 where n is the length of the two unified strings. Hence we get ( 2n 1 n ) = (2n 1)! n!(n 1)! = 1 (2n)! 2 (n!) 2 most general T-unifiers. Using Stirling s formula n! ( )n 2πn n e n n n we get for large n: 1 2n(2n) 2n 2 ( = 1 nn n ) 2 2n ( 2n n )2n = 1 2n 2 2n O( 22n n ) Corollary 1 (Complexity of T-String-Unification). A complete and minimilar set of most general T-unifiers for two T-strings s and t can be computed in exponential time w.r.t. the length of s and t. Example 11. Consider the strings AB and cd where A, B are variables and c, d are constants. The most general T-unifiers can be represented by the following scheme: A B c d ε c d ε c d The number of most general T-unifiers is 1 2 (2!) = ! 14

15 One should keep in mind that the exponential complexity is the worst case. In general the number of most general unifiers is much smaller. It should be also noted that each individual unifier can be computed in at most quadratic time (if not better) which is very important when using the algorithm within a proof procedure for intuitionistic logic. 4 T-String-Unification for Modal Logics T-string-unification is not only required when dealing with in intuitionistic logic but also for theorem proving in modal logics. The modular design of our unification algorithm allows us to adopt it to these logics by modifying the set of transformation rules. In contrast to intuitionistic logic T-string-unification in many modal logics puts certain restrictions on the length of the strings which may be assigned to variables. These restrictions which have been elaborated in detail by Wallen [26] arise from the accessibility relation of each particular logic and must be respected by the transformation rules. In the following we will treat the modal logics D, K, D4, K4, S4, S5 and T. For each logic we shall define the essential restrictions, specify the transformation rules and investigate the complexity of the corresponding unification process. 4.1 The Modal Logics D and K The modal logics D and K, together with S5, are the simplest. Variables may only be instantiated by a single character, i.e. for every T-unifier σ the following property must hold: σ(v ) = 1 for all V V. This restriction (see [26]) follows from the fact that the accessibility relation for D and K has no special properties which can be guaranteed. Accordingly unification of two T-strings s and t is much easier than before since we only have to scan both strings from left to right and assign characters to variables. Thus we only need four transformation rules: unification of empty strings (rule R1 of table 1), assignment of a single character to a variable (a new rule R2), elimination of equal characters at the begining (R3 of table 1), and exchanging the role of s and t (R4). Definition 11 (T-string-unification for D and K). The T-string-unification algorithm for the modal logics D and K is defined by the general transformation algorithm (figure 1) and the set of transformation rules presented in table 2. R1. {ε = ε ε} {}, {} R2. {V s = ε Xt} {s = ε t}, {V \X}, (V X) R3. {Xs = ε Xt} {s = ε t}, {} R4. {Cs = ε V t} {V t = ε Cs}, {} s and t denote arbitrary strings, X, V respectively, i.e. X V C, V V and C C. and C denote a single character, constant, or variable, Table 2. Transformation Rules for the Modal Logics D and K 15

16 Remark 7. The four transformation rules for the modal logics D and K are mutually exclusive. Therefore the unification algorithm is deterministic and computes at most one most general unifier for each pair of of T-strings s and t. We want to point out that the existence of a T-unifier is not sufficient for the complementarity of two atoms in the modal logics K or K4. A proof procedure for these logics has to check an additional criterion (see [26, 17]). Theorem 7. Let Γ ={s=ε t} be an equation of T-strings. Then the T-string-unification algorithm for D and K terminates on Γ and computes a complete and minimal set of most general T-unifiers for Γ. Proof (of theorem). Termination: We show that after applying at most two transformation rules to a system Γ a property Γ < T Γ holds between Γ and the resulting system Γ. Because of the strong restrictions on the rules for D and K the system ordering < T can be defined as follows: Γ 1 < T Γ 2 { s1 t 1 < s 2 t 2, or Γ 1 ={} and Γ 2 ={ε=ε ε}. where Γ 1 = {s 1 =ε t 1 } and Γ 2 = {s 2 =εt 2 }. The remaining proof proceeds by an analysis of the individual rule applications as in the proof of theorem 2. Correctness: Similarly to the proof of theorem 3 we prove by induction on the number of rule applications until termination that the computed substitution σ must be a correct T-unifier for Γ. In the induction step σ can be represented as Θ (σ ) where, Θ is the result of the first rule application and σ is a T-unifier for. Again the argument is that for all possible rules of table 2 this induces that σ is a T-unifier for Γ. Completeness: Since variables may only be instantiated by a single character T- string unification for D and K corresponds to bi-directional matching of individual characters which is exactly represented by the transformation rules in table 2. Thus there can be at most one T-unifier for a given pair of T-strings and the algorithm computes a T-unifier whenever one exists. Minimality: The set of computed most general T-unifiers consists of at most one element and is obviously minimal. An immediate consequence of the above proof is that the most general T- unifier of two T-strings s and t will be computed in linear time. Corollary 2 (Complexity of T-String-Unification for D and K). In the modal logics D and K a pair of T-strings s and t has at most one most general T-unifier which can be computed in O( s t ) steps. 16

17 Example 12. Consider again the strings abcdef and abghij from example 8. The following scheme represents the graphical unification w.r.t. the modal logics D and K: a B c D E f a B G h i J The only most general T-unifier is σ = {G\c, D\h, E\i, J\f}. 4.2 The Modal Logics D4 and K4 In the modal logic D4 and K4 variables may only be instantiated with non-empty strings since the accessibility relation for D4 and K4 is only guaranteed to be transitive (see [26]). Thus for every T-unifier σ the property σ(v ) 1 must hold for all V V. Consequently the rules R1 to R4 and R7 to R10 are identical with those for intuitionistic logic in table 1. The rules R5 and R6, however, must be modified such that empty strings cannot be assigned to variables of the alphabet V. In both cases we add need an additional restriction which makes sure that only auxiliary variables V which are not images of a regular variable under the substitution σ computed so far can be instantiated by a (possibly) empty string. In table 3 this restriction is expressed by a predicate R (σ) V. Definition 12 (T-string-unification for D4 and K4). The T-string-unification algorithm for the modal logics D4 and K4 is defined by the general transformation algorithm (figure 1) and the set of transformation rules presented in table 3. R1. {ε = ε ε} {}, {} R2. {ε = ε t + } {t + = ε ε}, {} R3. {Xs = ε Xt} {s = ε t}, {} R4. {Cs = ε V t} {V t = ε Cs}, {} R5. {V s = z ε} {s = ε ε}, {V \z}, (z ε or (V V and R (σ) V ) ) R6. {V s = ε C 1 t} {s = ε C 1 t}, {V \ε}, where V V and R (σ) V R7. {V s = z C 1 C 2 t} {s = ε C 2 t}, {V \zc 1 } R8. {V s + = ε V 1 t} {V 1 t = V s + }, {} R9. {V s + = z + V 1t} {V 1t = V s + }, {V \z + V } R10. {V s = z Xt} {V s = zx t}, {}, (V X, and s=ε or t ε or X C) s, t and z denote arbitrary strings, V V V, C 1 C, and R (σ) is defined as { V R (σ) false, if V := Ṽ \V σ for some Ṽ V, where σ is the substitution computed so far. true, otherwise Table 3. Transformation Rules for the Modal Logics D4 and K4 Theorem 8. Let Γ ={s=ε t} be an equation of T-strings. Then the T-string-unification algorithm for D4 and K4 terminates on Γ and computes a complete and minimal set of most general T-unifiers for Γ. 17

18 The proof of theorem 8 is very similar to those of the theorems 2 (Termination), 3 (Correctness), 4 (Completeness), and 5 (Minimality). In the induction step of the correctness proof we have to check additionally that no application of a transformation rule induces a substitution σ which may assign an empty string to a regular variable. Remark 8. The auxiliary variables may be removed from the most general T- unifiers after unification to ensure that the property σ(v ) 1 is respected. Example 13. Consider the strings abcdef and aghij. The most general T- unifier can be calculated using the following scheme: a B C D e F a g h I j a g h I j The most general T-unifiers are σ 0 = {B\g, C\hX, I\X DeY, F \Y j} and σ 1 = {B\ghX, I\X CDeY, F \Y j}. As in the intuitionistic case the number of computed most general T-unifiers is finite but may grow exponentially with respect to the length of the strings. Each individual T-unifier will be computed in at most quadratic time. 4.3 The Modal Logics S4 and S5 The modal logic S4, where the accessibility relation is reflexive and transitive, can be treated in the same way as the intuitionistic logic J. We can use the T-string-unification algorithm for J (see section 3) without any modifications. The modal logic S5 is trivial since the strings we have to unify consist only of a single character which is either a variable or a constant. This follows from the fact that the accessibility relation for S5 is an equivalence relation (see [26]). Therefore there is at most one T-unifier for a pair of T-strings s and t which can be computed by matching a single variable against a single character. In our general framework this is expressed by three transformation rules which can be viewed as specializations of the rules for D and K (table 2): assignment of a single character to a variable (modified R2), elimination of equal characters (modified R3), and exchanging the role of s and t (modified R4). To avoid confusion we keep the original numbering. Definition 13 (T-string-unification for S4 and S5). The T-string-unification algorithm for the modal logic S4 is defined by the general transformation algorithm (figure 1) and the set of transformation rules presented in table 1. The T-string-unification algorithm for S5 is defined by the general transformation algorithm and the set of transformation rules presented in table 4. It is not very difficult to prove termination, correctness, completeness, and minimality of T-string unification for both S4 and S5. 18

19 R2. {V = ε X} {}, {V \X}, (V X) R3. {X = ε X} {}, {} R4. {C = ε V } {V = ε C}, {} X, V and C denote single characters with X V C, V V and C C. Table 4. Transformation Rules for the Modal Logic S5 Theorem Let Γ ={s=ε t} be an equation of T-strings. Then the T-string-unification algorithm for S4 terminates on Γ and computes a complete and minimal set of most general T-unifiers for Γ. 2. Let Γ ={s=ε t} be an equation of T-strings where s and t consist of single characters. Then the T-string-unification algorithm for S5 terminates on Γ and computes a complete and minimal set of most general T-unifiers for Γ. Proof (of theorem). 1. For the logic S4 T-string unification is identical to the intuitionistic case (see [26]) and we may use the same proof. 2. The unification algorithm for S5 terminates in at most two steps after applying the rules R2, R3, or R4 and R2. In all three cases the algorithm computes the only (most general) T-unifier if there is one at all. Thus the result is a complete and minimal set of most general T-unifiers for. 4.4 The Modal Logic T In the modal logic T variables have to be instantiated by strings of at most one character since the accessibility relation for T is only guaranteed to be reflexive (see [26]). Thus for every T-unifier σ the following property must hold: σ(v ) 1 for all V V. This means that in a graphical representation the unification procedure must distribute all the constants of one string over different variables of the other while the variables do not have to occur if they are instantiated by the empty string. Example 14. Consider again the strings abcdef, aghij from example 13. Then the following scheme (where variables receive a small slot as well) represents the most general T-unifiers: a B C D e F a h i ε J ε a h ε i J ε a G h i J ε The most general T-unifiers are σ 0 = {G\ε, B\h, C\i, D\ε, J\e, F \ε}, σ 1 = {G\ε, B\h, C\ε, D\i, J\e, F \ε} and σ 2 = {B\G, C\h, D\i, J\e, F \ε}. 19

20 Technically, T-string-unification for the modal logic T is the most difficult case since we have to prevent the transformation rules from assigning strings consisting of more than one character to a regular variable. The essential idea for unifying two T-strings s and t is to detect the constants of t from left to right) and to determine variables of s to which they can be assigned and vice versa. For this purpose the rules have to make sure that the first part t 1 of t within an equation s=t 1 t 2, i.e. the string already investigated but not yet assigned, consists only of variables. Thus the transformation rules R1 to R3 of table 1 can be adopted without any modifications. In R10 the vertical bar will only be moved across variables. In R4 and R8 exchanging the role of s and t will only be allowed if t consists only of variables. R5 (creating a substitution if t has completely been investigated) will be restricted to right hand sides completely consisting of variables. Rule R9 (exchanging the role of s and t creating a substitution if the uninvestigated part of t begins with a variable) will be restricted to left hand sides completely consisting of variables. Given all these restrictions the unification algorithm would terminate unsuccessfully if both s and the uninvestigated part t 1 of t begin with a constant. Therefore the rules R6 and R7, which create a substitution if s begins with a variable and t 1 with a constant C, must be generalized to allow the assignment of C to a variable V occurring at an arbitrary position of s. In this case (rule R6 in table 5) s will be split at V and the left and right parts of s and t will be treated separately. Besides assigning C to V we must, however, deal with the fact, that in the substitution σ computed so far assignments of the form X\z where z contains more than one variable may have been introduced by R5 and R9. If V is among these variables then all other variables must be instantiated by the empty string. In table 5 we express this by the additional substitution θ (σ) V. To avoid confusion we keep the original numbering (there is no rule R7). Definition 14 (T-string-unification for T). The T-string-unification algorithm for the modal logic Tis defined by the general transformation algorithm (figure 1) and the set of transformation rules presented in table 5. Remark 9. To ensure the property σ(v ) 1 variables which are not assigned to non-empty strings may be replaced by the empty string after the unification. For this purpose we apply the substitution {V \ε V (V V )} to every most general T-unifier computed by the unification algorithm. Theorem 10. Let Γ ={s=ε t} be an equation of T-strings. Then the T-string-unification algorithm for T terminates on Γ and computes a complete and minimal set of most general T-unifiers for Γ. 20

T-String-Unification: Unifying Prefixes in Non-Classical Proof Methods

T-String-Unification: Unifying Prefixes in Non-Classical Proof Methods T-String-Unification: Unifying Prefixes in Non-Classical Proof Methods Jens Otten Christoph Kreitz Fachgebiet Intellektik, Fachbereich Informatik Technische Hochschule Darmstadt Alexanderstr. 10, 64283

More information

T-String-Unification: Unifying Prefixes in Non-Classical Proof Methods

T-String-Unification: Unifying Prefixes in Non-Classical Proof Methods T-String-Unification: Unifying Prefixes in Non-Classical Proof Methods Jens Otten Christoph Kreitz Fachgebiet Intellektik, Fachbereich Informatik Technische Hochschule Darmstadt Alexanderstr. 10, 64283

More information

A Uniform Proof Procedure for Classical and Non-Classical Logics

A Uniform Proof Procedure for Classical and Non-Classical Logics A Uniform Proof Procedure for Classical and Non-Classical Logics Jens Otten Christoph Kreitz Fachgebiet Intellektik, Fachbereich Informatik Technische Hochschule Darmstadt Alexanderstr. 10, 64283 Darmstadt,

More information

A Uniform Proof Procedure for Classical and Non-Classical Logics

A Uniform Proof Procedure for Classical and Non-Classical Logics A Uniform Proof Procedure for Classical and Non-Classical Logics Jens Otten Christoph Kreitz Fachgebiet Intellektik, Fachbereich Informatik Technische Hochschule Darmstadt Alexanderstr. 10, 64283 Darmstadt,

More information

A Connection Based Proof Method for Intuitionistic Logic

A Connection Based Proof Method for Intuitionistic Logic A Connection Based Proof Method for Intuitionistic Logic Jens Otten Christoph Kreitz Fachgebiet Intellektik, Fachbereich Informatik Technische Hochschule Darmstadt Alexanderstr. 10, 64283 Darmstadt, Germany

More information

17.1 Correctness of First-Order Tableaux

17.1 Correctness of First-Order Tableaux Applied Logic Lecture 17: Correctness and Completeness of First-Order Tableaux CS 4860 Spring 2009 Tuesday, March 24, 2009 Now that we have introduced a proof calculus for first-order logic we have to

More information

A Non-clausal Connection Calculus

A Non-clausal Connection Calculus A Non-clausal Connection Calculus Jens Otten Institut für Informatik, University of Potsdam August-Bebel-Str. 89, 14482 Potsdam-Babelsberg, Germany jeotten@cs.uni-potsdam.de Abstract. A non-clausal connection

More information

Deleting Redundancy in Proof Reconstruction

Deleting Redundancy in Proof Reconstruction Deleting Redundancy in Proof Reconstruction Stephan Schmitt 1 Christoph Kreitz 2 1 Fachgebiet Intellektik, Fachbereich Informatik, Darmstadt University of Technology Alexanderstr. 10, 64283 Darmstadt,

More information

A Constructively Adequate Refutation System for Intuitionistic Logic

A Constructively Adequate Refutation System for Intuitionistic Logic A Constructively Adequate Refutation System for Intuitionistic Logic Daniel S. Korn 1 Christoph Kreitz 2 1 FG Intellektik, FB Informatik, TH-Darmstadt Alexanderstraße 10, D 64238 Darmstadt e-mail: korn@informatik.th-darmstadt.de,

More information

Chapter 3 Deterministic planning

Chapter 3 Deterministic planning Chapter 3 Deterministic planning In this chapter we describe a number of algorithms for solving the historically most important and most basic type of planning problem. Two rather strong simplifying assumptions

More information

Chapter 2. Unification. Foundations of Logic Programming

Chapter 2. Unification. Foundations of Logic Programming Chapter 2 1 Outline Understanding the need for unification Defining alphabets, terms, and substitutions Introducing the Martelli-Montanari Algorithm for unification Proving correctness of the algorithm

More information

Introduction to Turing Machines. Reading: Chapters 8 & 9

Introduction to Turing Machines. Reading: Chapters 8 & 9 Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages

More information

Denotational semantics: proofs

Denotational semantics: proofs APPENDIX A Denotational semantics: proofs We show that every closed term M has a computable functional [[M ] as its denotation. A.1. Unification We show that for any two constructor terms one can decide

More information

3 Propositional Logic

3 Propositional Logic 3 Propositional Logic 3.1 Syntax 3.2 Semantics 3.3 Equivalence and Normal Forms 3.4 Proof Procedures 3.5 Properties Propositional Logic (25th October 2007) 1 3.1 Syntax Definition 3.0 An alphabet Σ consists

More information

A Tableau Calculus for Minimal Modal Model Generation

A Tableau Calculus for Minimal Modal Model Generation M4M 2011 A Tableau Calculus for Minimal Modal Model Generation Fabio Papacchini 1 and Renate A. Schmidt 2 School of Computer Science, University of Manchester Abstract Model generation and minimal model

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Today s class will be an introduction

More information

ileantap: An Intuitionistic Theorem Prover

ileantap: An Intuitionistic Theorem Prover ileantap: An Intuitionistic Theorem Prover Jens Otten Fachgebiet Intellektik, Fachbereich Informatik Technische Hochschule Darmstadt jeotten@informatik.th-darmstadt.de Overview Idea: free variable analytic

More information

Connection-Driven Inductive Theorem Proving

Connection-Driven Inductive Theorem Proving Connection-Driven Inductive Theorem Proving Christoph Kreitz (kreitz@cs.cornell.edu) Department of Computer Science, Cornell-University, Ithaca, NY 14853-7501, USA Brigitte Pientka (bp@cs.cmu.edu) Department

More information

Propositional and Predicate Logic - IV

Propositional and Predicate Logic - IV Propositional and Predicate Logic - IV Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Propositional and Predicate Logic - IV ZS 2015/2016 1 / 19 Tableau method (from the previous lecture)

More information

First-Order Logic. Chapter Overview Syntax

First-Order Logic. Chapter Overview Syntax Chapter 10 First-Order Logic 10.1 Overview First-Order Logic is the calculus one usually has in mind when using the word logic. It is expressive enough for all of mathematics, except for those concepts

More information

Informal Statement Calculus

Informal Statement Calculus FOUNDATIONS OF MATHEMATICS Branches of Logic 1. Theory of Computations (i.e. Recursion Theory). 2. Proof Theory. 3. Model Theory. 4. Set Theory. Informal Statement Calculus STATEMENTS AND CONNECTIVES Example

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 September 2, 2004 These supplementary notes review the notion of an inductive definition and

More information

Kleene Algebras and Algebraic Path Problems

Kleene Algebras and Algebraic Path Problems Kleene Algebras and Algebraic Path Problems Davis Foote May 8, 015 1 Regular Languages 1.1 Deterministic Finite Automata A deterministic finite automaton (DFA) is a model of computation that can simulate

More information

Connection-Based Proof Construction in Linear Logic

Connection-Based Proof Construction in Linear Logic Connection-Based Proof Construction in Linear Logic C Kreitz 1 H Mantel 2 J Otten 3 S Schmitt 3 1 Department of Computer Science, Cornell University Ithaca, NY 14853, USA kreitz@cscornelledu 2 Deutsches

More information

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω 1 Preliminaries In this chapter we first give a summary of the basic notations, terminology and results which will be used in this thesis. The treatment here is reduced to a list of definitions. For the

More information

TR : Tableaux for the Logic of Proofs

TR : Tableaux for the Logic of Proofs City University of New York (CUNY) CUNY Academic Works Computer Science Technical Reports Graduate Center 2004 TR-2004001: Tableaux for the Logic of Proofs Bryan Renne Follow this and additional works

More information

Introduction to lambda calculus Part 6

Introduction to lambda calculus Part 6 Introduction to lambda calculus Part 6 Antti-Juhani Kaijanaho 2017-02-16 1 Untyped lambda calculus 2 Typed lambda calculi 2.1 Dynamically typed lambda calculus with integers 2.2 A model of Lisp 2.3 Simply

More information

Proving Completeness for Nested Sequent Calculi 1

Proving Completeness for Nested Sequent Calculi 1 Proving Completeness for Nested Sequent Calculi 1 Melvin Fitting abstract. Proving the completeness of classical propositional logic by using maximal consistent sets is perhaps the most common method there

More information

Mathematics 114L Spring 2018 D.A. Martin. Mathematical Logic

Mathematics 114L Spring 2018 D.A. Martin. Mathematical Logic Mathematics 114L Spring 2018 D.A. Martin Mathematical Logic 1 First-Order Languages. Symbols. All first-order languages we consider will have the following symbols: (i) variables v 1, v 2, v 3,... ; (ii)

More information

Safety Analysis versus Type Inference

Safety Analysis versus Type Inference Information and Computation, 118(1):128 141, 1995. Safety Analysis versus Type Inference Jens Palsberg palsberg@daimi.aau.dk Michael I. Schwartzbach mis@daimi.aau.dk Computer Science Department, Aarhus

More information

Introduction to Metalogic

Introduction to Metalogic Philosophy 135 Spring 2008 Tony Martin Introduction to Metalogic 1 The semantics of sentential logic. The language L of sentential logic. Symbols of L: Remarks: (i) sentence letters p 0, p 1, p 2,... (ii)

More information

CS243, Logic and Computation Nondeterministic finite automata

CS243, Logic and Computation Nondeterministic finite automata CS243, Prof. Alvarez NONDETERMINISTIC FINITE AUTOMATA (NFA) Prof. Sergio A. Alvarez http://www.cs.bc.edu/ alvarez/ Maloney Hall, room 569 alvarez@cs.bc.edu Computer Science Department voice: (67) 552-4333

More information

Ma/CS 117c Handout # 5 P vs. NP

Ma/CS 117c Handout # 5 P vs. NP Ma/CS 117c Handout # 5 P vs. NP We consider the possible relationships among the classes P, NP, and co-np. First we consider properties of the class of NP-complete problems, as opposed to those which are

More information

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 6 CHAPTER 2 FINITE AUTOMATA 2. Nondeterministic Finite Automata NFA 3. Finite Automata and Regular Expressions 4. Languages

More information

CS 455/555: Finite automata

CS 455/555: Finite automata CS 455/555: Finite automata Stefan D. Bruda Winter 2019 AUTOMATA (FINITE OR NOT) Generally any automaton Has a finite-state control Scans the input one symbol at a time Takes an action based on the currently

More information

Modal and temporal logic

Modal and temporal logic Modal and temporal logic N. Bezhanishvili I. Hodkinson C. Kupke Imperial College London 1 / 83 Overview Part II 1 Soundness and completeness. Canonical models. 3 lectures. 2 Finite model property. Filtrations.

More information

Computability Theory. CS215, Lecture 6,

Computability Theory. CS215, Lecture 6, Computability Theory CS215, Lecture 6, 2000 1 The Birth of Turing Machines At the end of the 19th century, Gottlob Frege conjectured that mathematics could be built from fundamental logic In 1900 David

More information

INF3170 / INF4171 Notes on Resolution

INF3170 / INF4171 Notes on Resolution INF3170 / INF4171 Notes on Resolution Andreas Nakkerud Autumn 2015 1 Introduction This is a short description of the Resolution calculus for propositional logic, and for first order logic. We will only

More information

Equational Logic. Chapter 4

Equational Logic. Chapter 4 Chapter 4 Equational Logic From now on First-order Logic is considered with equality. In this chapter, I investigate properties of a set of unit equations. For a set of unit equations I write E. Full first-order

More information

Matrix-based Inductive Theorem Proving

Matrix-based Inductive Theorem Proving Matrix-based Inductive Theorem Proving Christoph Kreitz 1 & Brigitte Pientka 2 1 Department of Computer Science, Cornell-University Ithaca, NY 14853-7501, USA kreitz@cs.cornell.edu 2 Department of Computer

More information

Supplementary Notes on Inductive Definitions

Supplementary Notes on Inductive Definitions Supplementary Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 29, 2002 These supplementary notes review the notion of an inductive definition

More information

Theory of Computing Tamás Herendi

Theory of Computing Tamás Herendi Theory of Computing Tamás Herendi Theory of Computing Tamás Herendi Publication date 2014 Table of Contents 1 Preface 1 2 Formal languages 2 3 Order of growth rate 9 4 Turing machines 16 1 The definition

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 28, 2003 These supplementary notes review the notion of an inductive definition and give

More information

TABLEAU SYSTEM FOR LOGIC OF CATEGORIAL PROPOSITIONS AND DECIDABILITY

TABLEAU SYSTEM FOR LOGIC OF CATEGORIAL PROPOSITIONS AND DECIDABILITY Bulletin of the Section of Logic Volume 37:3/4 (2008), pp. 223 231 Tomasz Jarmużek TABLEAU SYSTEM FOR LOGIC OF CATEGORIAL PROPOSITIONS AND DECIDABILITY Abstract In the article we present an application

More information

CS632 Notes on Relational Query Languages I

CS632 Notes on Relational Query Languages I CS632 Notes on Relational Query Languages I A. Demers 6 Feb 2003 1 Introduction Here we define relations, and introduce our notational conventions, which are taken almost directly from [AD93]. We begin

More information

Induction on Failing Derivations

Induction on Failing Derivations Induction on Failing Derivations Technical Report PL-Sep13 September 2013, with addenda from Spring 2016 ay Ligatti Department of Computer Science and Engineering University of South Florida Abstract A

More information

Automata Theory and Formal Grammars: Lecture 1

Automata Theory and Formal Grammars: Lecture 1 Automata Theory and Formal Grammars: Lecture 1 Sets, Languages, Logic Automata Theory and Formal Grammars: Lecture 1 p.1/72 Sets, Languages, Logic Today Course Overview Administrivia Sets Theory (Review?)

More information

Context-free grammars and languages

Context-free grammars and languages Context-free grammars and languages The next class of languages we will study in the course is the class of context-free languages. They are defined by the notion of a context-free grammar, or a CFG for

More information

23.1 Gödel Numberings and Diagonalization

23.1 Gödel Numberings and Diagonalization Applied Logic Lecture 23: Unsolvable Problems in Logic CS 4860 Spring 2009 Tuesday, April 14, 2009 The fact that Peano Arithmetic is expressive enough to represent all computable functions means that some

More information

Classical Propositional Logic

Classical Propositional Logic The Language of A Henkin-style Proof for Natural Deduction January 16, 2013 The Language of A Henkin-style Proof for Natural Deduction Logic Logic is the science of inference. Given a body of information,

More information

Mathematical Logic (IX)

Mathematical Logic (IX) Mathematical Logic (IX) Yijia Chen 1. The Löwenheim-Skolem Theorem and the Compactness Theorem Using the term-interpretation, it is routine to verify: Theorem 1.1 (Löwenheim-Skolem). Let Φ L S be at most

More information

3.17 Semantic Tableaux for First-Order Logic

3.17 Semantic Tableaux for First-Order Logic 3.17 Semantic Tableaux for First-Order Logic There are two ways to extend the tableau calculus to quantified formulas: using ground instantiation using free variables Tableaux with Ground Instantiation

More information

Isomorphisms between pattern classes

Isomorphisms between pattern classes Journal of Combinatorics olume 0, Number 0, 1 8, 0000 Isomorphisms between pattern classes M. H. Albert, M. D. Atkinson and Anders Claesson Isomorphisms φ : A B between pattern classes are considered.

More information

Decidable Subsets of CCS

Decidable Subsets of CCS Decidable Subsets of CCS based on the paper with the same title by Christensen, Hirshfeld and Moller from 1994 Sven Dziadek Abstract Process algebra is a very interesting framework for describing and analyzing

More information

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic CHAPTER 10 Gentzen Style Proof Systems for Classical Logic Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. By humans, not mentioning

More information

On the Complexity of the Reflected Logic of Proofs

On the Complexity of the Reflected Logic of Proofs On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,

More information

Non-commutative reduction rings

Non-commutative reduction rings Revista Colombiana de Matemáticas Volumen 33 (1999), páginas 27 49 Non-commutative reduction rings Klaus Madlener Birgit Reinert 1 Universität Kaiserslautern, Germany Abstract. Reduction relations are

More information

Taming Implications in Dummett Logic

Taming Implications in Dummett Logic Taming Implications in Dummett Logic Guido Fiorino Dipartimento di Metodi Quantitativi per le cienze Economiche ed Aziendali, Università di Milano-Bicocca, Piazza dell Ateneo Nuovo, 1, 20126 Milano, Italy.

More information

KRIPKE S THEORY OF TRUTH 1. INTRODUCTION

KRIPKE S THEORY OF TRUTH 1. INTRODUCTION KRIPKE S THEORY OF TRUTH RICHARD G HECK, JR 1. INTRODUCTION The purpose of this note is to give a simple, easily accessible proof of the existence of the minimal fixed point, and of various maximal fixed

More information

UNITARY UNIFICATION OF S5 MODAL LOGIC AND ITS EXTENSIONS

UNITARY UNIFICATION OF S5 MODAL LOGIC AND ITS EXTENSIONS Bulletin of the Section of Logic Volume 32:1/2 (2003), pp. 19 26 Wojciech Dzik UNITARY UNIFICATION OF S5 MODAL LOGIC AND ITS EXTENSIONS Abstract It is shown that all extensions of S5 modal logic, both

More information

Approximations of Modal Logic K

Approximations of Modal Logic K WoLLIC 2005 Preliminary Version Approximations of Modal Logic K Guilherme de Souza Rabello 2 Department of Mathematics Institute of Mathematics and Statistics University of Sao Paulo, Brazil Marcelo Finger

More information

Using E-Unification to Handle Equality in Universal Formula Semantic Tableaux Extended Abstract

Using E-Unification to Handle Equality in Universal Formula Semantic Tableaux Extended Abstract Using E-Unification to Handle Equality in Universal Formula Semantic Tableaux Extended Abstract Bernhard Beckert University of Karlsruhe Institute for Logic, Complexity und Deduction Systems 76128 Karlsruhe,

More information

Theory of Computation p.1/?? Theory of Computation p.2/?? Unknown: Implicitly a Boolean variable: true if a word is

Theory of Computation p.1/?? Theory of Computation p.2/?? Unknown: Implicitly a Boolean variable: true if a word is Abstraction of Problems Data: abstracted as a word in a given alphabet. Σ: alphabet, a finite, non-empty set of symbols. Σ : all the words of finite length built up using Σ: Conditions: abstracted as a

More information

Theory of Computation 1 Sets and Regular Expressions

Theory of Computation 1 Sets and Regular Expressions Theory of Computation 1 Sets and Regular Expressions Frank Stephan Department of Computer Science Department of Mathematics National University of Singapore fstephan@comp.nus.edu.sg Theory of Computation

More information

Finding Consensus Strings With Small Length Difference Between Input and Solution Strings

Finding Consensus Strings With Small Length Difference Between Input and Solution Strings Finding Consensus Strings With Small Length Difference Between Input and Solution Strings Markus L. Schmid Trier University, Fachbereich IV Abteilung Informatikwissenschaften, D-54286 Trier, Germany, MSchmid@uni-trier.de

More information

Outline. Overview. Syntax Semantics. Introduction Hilbert Calculus Natural Deduction. 1 Introduction. 2 Language: Syntax and Semantics

Outline. Overview. Syntax Semantics. Introduction Hilbert Calculus Natural Deduction. 1 Introduction. 2 Language: Syntax and Semantics Introduction Arnd Poetzsch-Heffter Software Technology Group Fachbereich Informatik Technische Universität Kaiserslautern Sommersemester 2010 Arnd Poetzsch-Heffter ( Software Technology Group Fachbereich

More information

arxiv: v1 [cs.lo] 16 Jul 2017

arxiv: v1 [cs.lo] 16 Jul 2017 SOME IMPROVEMENTS IN FUZZY TURING MACHINES HADI FARAHANI arxiv:1707.05311v1 [cs.lo] 16 Jul 2017 Department of Computer Science, Shahid Beheshti University, G.C, Tehran, Iran h farahani@sbu.ac.ir Abstract.

More information

Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing

Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing Cesare Tinelli (tinelli@cs.uiowa.edu) Department of Computer Science The University of Iowa Iowa City, IA, USA Abstract. We propose

More information

2. Prime and Maximal Ideals

2. Prime and Maximal Ideals 18 Andreas Gathmann 2. Prime and Maximal Ideals There are two special kinds of ideals that are of particular importance, both algebraically and geometrically: the so-called prime and maximal ideals. Let

More information

CS 486: Applied Logic Lecture 7, February 11, Compactness. 7.1 Compactness why?

CS 486: Applied Logic Lecture 7, February 11, Compactness. 7.1 Compactness why? CS 486: Applied Logic Lecture 7, February 11, 2003 7 Compactness 7.1 Compactness why? So far, we have applied the tableau method to propositional formulas and proved that this method is sufficient and

More information

Herbrand Theorem, Equality, and Compactness

Herbrand Theorem, Equality, and Compactness CSC 438F/2404F Notes (S. Cook and T. Pitassi) Fall, 2014 Herbrand Theorem, Equality, and Compactness The Herbrand Theorem We now consider a complete method for proving the unsatisfiability of sets of first-order

More information

LTCS Report. A finite basis for the set of EL-implications holding in a finite model

LTCS Report. A finite basis for the set of EL-implications holding in a finite model Dresden University of Technology Institute for Theoretical Computer Science Chair for Automata Theory LTCS Report A finite basis for the set of EL-implications holding in a finite model Franz Baader, Felix

More information

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes

Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes These notes form a brief summary of what has been covered during the lectures. All the definitions must be memorized and understood. Statements

More information

Axioms of Kleene Algebra

Axioms of Kleene Algebra Introduction to Kleene Algebra Lecture 2 CS786 Spring 2004 January 28, 2004 Axioms of Kleene Algebra In this lecture we give the formal definition of a Kleene algebra and derive some basic consequences.

More information

Bisimulation for conditional modalities

Bisimulation for conditional modalities Bisimulation for conditional modalities Alexandru Baltag and Giovanni Ciná Institute for Logic, Language and Computation, University of Amsterdam March 21, 2016 Abstract We give a general definition of

More information

arxiv: v1 [cs.pl] 19 May 2016

arxiv: v1 [cs.pl] 19 May 2016 arxiv:1605.05858v1 [cs.pl] 19 May 2016 Domain Theory: An Introduction Robert Cartwright Rice University Rebecca Parsons ThoughtWorks, Inc. Moez AbdelGawad SRTA-City Hunan University This monograph is an

More information

Intuitionistic Proof Transformations and their Application to Constructive Program Synthesis

Intuitionistic Proof Transformations and their Application to Constructive Program Synthesis Intuitionistic Proof Transformations and their Application to Constructive Program Synthesis Uwe Egly uwe@krtuwienacat Stephan Schmitt steph@cscornelledu presented by: Christoph Kreitz kreitz@cscornelledu

More information

Metainduction in Operational Set Theory

Metainduction in Operational Set Theory Metainduction in Operational Set Theory Luis E. Sanchis Department of Electrical Engineering and Computer Science Syracuse University Syracuse, NY 13244-4100 Sanchis@top.cis.syr.edu http://www.cis.syr.edu/

More information

VC-DENSITY FOR TREES

VC-DENSITY FOR TREES VC-DENSITY FOR TREES ANTON BOBKOV Abstract. We show that for the theory of infinite trees we have vc(n) = n for all n. VC density was introduced in [1] by Aschenbrenner, Dolich, Haskell, MacPherson, and

More information

Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing

Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing Cooperation of Background Reasoners in Theory Reasoning by Residue Sharing Cesare Tinelli tinelli@cs.uiowa.edu Department of Computer Science The University of Iowa Report No. 02-03 May 2002 i Cooperation

More information

Acceptance of!-languages by Communicating Deterministic Turing Machines

Acceptance of!-languages by Communicating Deterministic Turing Machines Acceptance of!-languages by Communicating Deterministic Turing Machines Rudolf Freund Institut für Computersprachen, Technische Universität Wien, Karlsplatz 13 A-1040 Wien, Austria Ludwig Staiger y Institut

More information

Introduction to Logic in Computer Science: Autumn 2007

Introduction to Logic in Computer Science: Autumn 2007 Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Tableaux for First-order Logic The next part of

More information

Syntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2)

Syntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2) Syntax of FOL Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam The syntax of a language defines the way in which

More information

Přednáška 12. Důkazové kalkuly Kalkul Hilbertova typu. 11/29/2006 Hilbertův kalkul 1

Přednáška 12. Důkazové kalkuly Kalkul Hilbertova typu. 11/29/2006 Hilbertův kalkul 1 Přednáška 12 Důkazové kalkuly Kalkul Hilbertova typu 11/29/2006 Hilbertův kalkul 1 Formal systems, Proof calculi A proof calculus (of a theory) is given by: A. a language B. a set of axioms C. a set of

More information

Foundations of Artificial Intelligence

Foundations of Artificial Intelligence Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Bernhard Nebel Albert-Ludwigs-Universität Freiburg May 17, 2016

More information

Peano Arithmetic. CSC 438F/2404F Notes (S. Cook) Fall, Goals Now

Peano Arithmetic. CSC 438F/2404F Notes (S. Cook) Fall, Goals Now CSC 438F/2404F Notes (S. Cook) Fall, 2008 Peano Arithmetic Goals Now 1) We will introduce a standard set of axioms for the language L A. The theory generated by these axioms is denoted PA and called Peano

More information

A Cut-Free Calculus for Second-Order Gödel Logic

A Cut-Free Calculus for Second-Order Gödel Logic Fuzzy Sets and Systems 00 (2014) 1 30 Fuzzy Sets and Systems A Cut-Free Calculus for Second-Order Gödel Logic Ori Lahav, Arnon Avron School of Computer Science, Tel Aviv University Abstract We prove that

More information

Clausal Connection-Based Theorem Proving in Intuitionistic First-Order Logic

Clausal Connection-Based Theorem Proving in Intuitionistic First-Order Logic Clausal Connection-Based Theorem Proving in Intuitionistic First-Order Logic Jens Otten Institut für Informatik, University of Potsdam August-Bebel-Str. 89, 14482 Potsdam-Babelsberg, Germany jeotten@cs.uni-potsdam.de

More information

Lecture Notes On THEORY OF COMPUTATION MODULE -1 UNIT - 2

Lecture Notes On THEORY OF COMPUTATION MODULE -1 UNIT - 2 BIJU PATNAIK UNIVERSITY OF TECHNOLOGY, ODISHA Lecture Notes On THEORY OF COMPUTATION MODULE -1 UNIT - 2 Prepared by, Dr. Subhendu Kumar Rath, BPUT, Odisha. UNIT 2 Structure NON-DETERMINISTIC FINITE AUTOMATA

More information

Automated Synthesis of Tableau Calculi

Automated Synthesis of Tableau Calculi Automated Synthesis of Tableau Calculi Renate A. Schmidt 1 and Dmitry Tishkovsky 1 School of Computer Science, The University of Manchester Abstract This paper presents a method for synthesising sound

More information

Prefixed Tableaus and Nested Sequents

Prefixed Tableaus and Nested Sequents Prefixed Tableaus and Nested Sequents Melvin Fitting Dept. Mathematics and Computer Science Lehman College (CUNY), 250 Bedford Park Boulevard West Bronx, NY 10468-1589 e-mail: melvin.fitting@lehman.cuny.edu

More information

Restricted truth predicates in first-order logic

Restricted truth predicates in first-order logic Restricted truth predicates in first-order logic Thomas Bolander 1 Introduction It is well-known that there exist consistent first-order theories that become inconsistent when we add Tarski s schema T.

More information

Computational Theory

Computational Theory Computational Theory Finite Automata and Regular Languages Curtis Larsen Dixie State University Computing and Design Fall 2018 Adapted from notes by Russ Ross Adapted from notes by Harry Lewis Curtis Larsen

More information

Propositional Logic of Continuous Transformations in Cantor Space

Propositional Logic of Continuous Transformations in Cantor Space Propositional Logic of Continuous Transformations in Cantor Space Grigori Mints Philosophy Department, Stanford University Ting Zhang Computer Science Department, Stanford University 1 Introduction A well-known

More information

Denotational Semantics

Denotational Semantics 5 Denotational Semantics In the operational approach, we were interested in how a program is executed. This is contrary to the denotational approach, where we are merely interested in the effect of executing

More information

X-MA2C01-1: Partial Worked Solutions

X-MA2C01-1: Partial Worked Solutions X-MAC01-1: Partial Worked Solutions David R. Wilkins May 013 1. (a) Let A, B and C be sets. Prove that (A \ (B C)) (B \ C) = (A B) \ C. [Venn Diagrams, by themselves without an accompanying logical argument,

More information

A framework based on implementation relations for implementing LOTOS specifications

A framework based on implementation relations for implementing LOTOS specifications Published in: Computer Networks and ISDN Systems, 25 (1992), 23-41 A framework based on implementation relations for implementing LOTOS specifications Guy Leduc Research Associate of the National Fund

More information

A Goal-Oriented Algorithm for Unification in EL w.r.t. Cycle-Restricted TBoxes

A Goal-Oriented Algorithm for Unification in EL w.r.t. Cycle-Restricted TBoxes A Goal-Oriented Algorithm for Unification in EL w.r.t. Cycle-Restricted TBoxes Franz Baader, Stefan Borgwardt, and Barbara Morawska {baader,stefborg,morawska}@tcs.inf.tu-dresden.de Theoretical Computer

More information

Lecture 2: Connecting the Three Models

Lecture 2: Connecting the Three Models IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Advanced Course on Computational Complexity Lecture 2: Connecting the Three Models David Mix Barrington and Alexis Maciel July 18, 2000

More information

Taming Implications in Dummett Logic

Taming Implications in Dummett Logic Taming Implications in Dummett Logic Guido Fiorino Dipartimento di Metodi Quantitativi per le Scienze Economiche ed Aziendali, Università di Milano-Bicocca, Piazza dell Ateneo Nuovo, 1, 20126 Milano, Italy.

More information