Lecture Notes on
Constructive Logic: Overview
15-317: Constructive Logic
Frank Pfenning
Lecture 1
August 25, 2009
1
Introduction
According to Wikipedia, logic is the study of the principles of valid i
Lecture 1: Propositional Logic
Syntax
Semantics
Truth tables
Implications and Equivalences
Valid and Invalid arguments
Normal forms
Davis-Putnam Algorithm
1
Atomic propositions and logical connectives
(* lecture 2/19/2014
*)
Require String. Open Scope string_scope.
Ltac move_to_top x :=
match reverse goal with
| H : _ |- _ => try move x after H
end.
Tactic Notation "assert_eq" ident(x) constr(v) :=
Solvers for the Problem of
Boolean Satisfiability (SAT)
Will Klieber
15-414
Aug 31, 2011
Why study SAT solvers?
Many problems reduce to SAT.
Formal verification
CAD, VLSI
Optimization
AI, planning, au
(* * Induction: Proof by Induction *)
(* The next line imports all of our definitions from the
previous chapter. *)
Require Export Basics.
(* For it to work, you need to use [coqc] to compile [Basics.
(* * Basics: Functional Programming in Coq *)
(* This library definition is included here temporarily
for backward compatibility with Coq 8.3.
Please ignore. *)
Definition admit cfw_T: Type : T. Admit
15-414/614 : Bug Catching, Spring 2014
Homework 1 Solutions
1
Classical Propositional Logic [20 points]
Let x, y and z be three propositions.
(a) (8 points) Show that the two propositional formulas, (
15-414/614 : Bug Catching, Spring 2014
Homework 1
Due : 5 Feb 2014 (Wednesday), 3:00 pm (before class)
Please look at the course website for collaboration policy. Prepare a pdf for problems 1 to 2
sep
15-414
HW 4
1
Instructor: Edmund M. Clarke
TA: Qinsi Wang
Due date: 3pm, 04/25/2014
[email protected]
Assignment 4
1
Models for well dened CTL formulae (30 points)
Give a model for each of the follow
(* * Basics: Functional Programming in Coq *)
(* This library definition is included here temporarily
for backward compatibility with Coq 8.3.
Please ignore. *)
Definition admit cfw_T: Type : T. Admit
(* * Induction: Proof by Induction *)
(* The next line imports all of our definitions from the
previous chapter. *)
Require Export Basics.
(* For it to work, you need to use [coqc] to compile [Basics.