[CSUSB] >> [CompSci] >> [Dick Botting] >> [CS656/556 Course Materials] >> class/02
[Index] || [Contents] || [Grades] Mon Mar 3 14:43:01 PST 2003
Propositions
Propositional logic is about true/false statements.

For example -- software requirements.

To specify requirements we need to make statements about
the world as is (NAT)
the world as it should be (REQ)
the behavior of the computer (SPEC).
Correct SPEC:
if  NAT and SPEC then REQ.
(1): NAT /\ SPEC -> REQ.

But the above (1) is not enough.
Is it possible?
NAT consistent.
REQ consistent.
Any loopholes?
REQ covers all cases.
(more on these properties later)

chapter 1.1: any questions?

What notations  for logic do you know already?
Book	/\ \/ ->
Boole	+ - <=
C/C++	&& || ! <=
Pascal	and or not
Prolog	, ; not
MATHS	and or not if_then_
And/Or Tables
Karnaugh Maps
OBDDs
data structures
etc.

Process:
declarative sentences ----->
abbreviation scheme + formulae.
Exercises
http://www.csci.csusb.edu/dick/cs656/lunch.html
From book 1.1

Lab:
Complete Lab 01 if unable to logi before!
Pfau lib WEBPAC
http://webpac.lib.csusb.edu/
and search for General Keyword "Propositional Calculus"
and Periodical....Title "Software Engineering"
ACM digital library
http://www.acm.org/dl/
and seaarch for "Formal Methods"
If time spare look at my personal introduction to logic:
http://www.csci.csusb.edu/dick/maths/logic_0_Intro.html
http://www.csci.csusb.edu/dick/maths/intro_logic.html

Assigned work. #5 in exs1.1 p5..6.

Next:
Introduction to Proof Techniques
Motivate
Tabulate
Idea of Natural Deduction
Study Chapter 1.2: Proofs. Exercises 1.2 .. 1.6

http://www.csci.csusb.edu/dick/cs656/class/03.html