Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Logic and CS / Huth, Ryan. Logic in Computer Science, 2004 (Cambridge).pdf
Скачиваний:
118
Добавлен:
10.08.2013
Размер:
2.23 Mб
Скачать

1.8 Bibliographic notes

91

9.Consider Figure 1.20 on page 77. Verify that

(a)its test produces contradictory constraints

(b)its cubic analysis does not decide satisfiability, regardless of whether the two optimizations we described are present.

10.Verify that the DAG of Figure 1.17 (page 74) is indeed the one obtained for T (φ), where φ is the formula in (1.11) on page 73.

* 11. An implementor may be concerned with the possibility that the answers to the cubic SAT solver may depend on a particular order in which we test unmarked nodes or use the rules in Figure 1.14. Give a semi-formal argument for why the analysis results don’t depend on such an order.

12.Find a formula φ such that our cubic SAT solver cannot decide the satisfiability of T (φ).

13.Advanced Project: Write a complete implementation of the cubic SAT solver described in Section 1.6.2. It should read formulas from the keyboard or a file; should assume right-associativity of , , and (respectively); compute the DAG of T (φ); perform the cubic SAT solver next. Think also about including appropriate user output, diagnostics, and optimizations.

14.Show that our cubic SAT solver specified in this section

(a)terminates on all syntactically correct input;

(b)satisfies the invariant (1.9) after the first permanent marking;

(c)preserves (1.9) for all permanent markings it makes;

(d)computes only correct satisfiability witnesses;

(e)computes only correct ‘not satisfiable’ replies; and

(f)remains to be correct under the two modifications described on page 77 for handling results of a node’s two test runs.

1.8 Bibliographic notes

Logic has a long history stretching back at least 2000 years, but the truthvalue semantics of propositional logic presented in this and every logic textbook today was invented only about 160 years ago, by G. Boole [Boo54]. Boole used the symbols + and · for disjunction and conjunction.

Natural deduction was invented by G. Gentzen [Gen69], and further developed by D. Prawitz [Pra65]. Other proof systems existed before then, notably axiomatic systems which present a small number of axioms together with the rule modus ponens (which we call e). Proof systems often present as small a number of axioms as possible; and only for an adequate set of connectives such as and ¬. This makes them hard to use in practice. Gentzen improved the situation by inventing the idea of working with assumptions (used by the rules i, ¬i and e) and by treating all the connectives separately.

92

1 Propositional logic

Our linear and cubic SAT solvers are variants of St˚almarck’s method [SS90], a SAT solver which is patented in Sweden and in the United States of America.

Further historical remarks, and also pointers to other contemporary books about propositional and predicate logic, can be found in the bibliographic remarks at the end of Chapter 2. For an introduction to algorithms and data structures see e.g. [Wei98].

Соседние файлы в папке Logic and CS