Craig DeLancey · A Concise Introduction to Logic, Ch. 1 · CC BY-SA 4.0
An argument is a set of premises plus a conclusion. An argument is valid when the conclusion must be true whenever all premises are true. Validity is about structure, not about whether the premises are actually true.
Premises and conclusions
An argument has one or more premises (the given information) and exactly one conclusion (the claim being supported). The word "therefore" signals the conclusion. The word "because" signals a premise.
Scheme
; An argument is a list of premises + a conclusion.; We represent it as: (premises . conclusion)
(define (make-argument premises conclusion)
(cons premises conclusion))
(define (get-premises arg) (car arg))
(define (get-conclusion arg) (cdr arg))
; Example: All humans are mortal. Socrates is human.; Therefore Socrates is mortal.
(define arg1
(make-argument
(list "All humans are mortal""Socrates is human")
"Socrates is mortal"))
(display "Premises: ")
(display (get-premises arg1)) (newline)
(display "Conclusion: ")
(display (get-conclusion arg1))
Python
# An argument: premises + conclusion
arg1 = {
"premises": ["All humans are mortal", "Socrates is human"],
"conclusion": "Socrates is mortal"
}
print(f"Premises: {arg1['premises']}")
print(f"Conclusion: {arg1['conclusion']}")
Validity vs soundness
An argument is valid if the conclusion follows necessarily from the premises. An argument is sound if it is valid AND all premises are actually true. A valid argument can have false premises. A sound argument cannot.
Scheme
; Validity: structure only. Soundness: structure + truth.; Valid AND sound:; P1: All dogs are animals. (true); P2: Rex is a dog. (true); C: Rex is an animal. (follows, and premises are true); Valid but NOT sound:; P1: All fish can fly. (false!); P2: A whale is a fish. (false!); C: A whale can fly. (follows from premises, but premises are false); Invalid (bad structure):; P1: Some cats are black.; P2: Felix is a cat.; C: Felix is black. (does NOT follow - "some" is not "all")
(define (valid? premises-true conclusion-true)
; An argument is invalid only when premises are true; but the conclusion is false.
(not (and premises-true (not conclusion-true))))
; Test all truth combinations
(display "T premises, T conclusion: valid? ")
(display (valid? #t#t)) (newline)
(display "T premises, F conclusion: valid? ")
(display (valid? #t#f)) (newline)
(display "F premises, T conclusion: valid? ")
(display (valid? #f#t)) (newline)
(display "F premises, F conclusion: valid? ")
(display (valid? #f#f))
; Only row 2 is invalid: true premises, false conclusion.
Deductive vs inductive
A deductive argument claims that the conclusion follows necessarily. A valid deductive argument is airtight. An inductive argument claims that the conclusion is probable. Even strong inductive arguments can have true premises and a false conclusion.
Scheme
; Deductive: the conclusion MUST follow.; "All A are B. x is A. Therefore x is B."; Inductive: the conclusion PROBABLY follows.; "The sun rose every day so far. Therefore it will rise tomorrow."; Strong but not certain.; We can model the difference:
(define (deductive-valid? all-premises-true conclusion-true)
; Invalid only when premises true, conclusion false
(not (and all-premises-true (not conclusion-true))))
(define (inductive-strong? observed-cases confirming-cases)
; Strength = proportion of confirming cases
(/ confirming-cases observed-cases))
(display "Deductive (T,T): ")
(display (deductive-valid? #t#t)) (newline)
(display "Deductive (T,F): ")
(display (deductive-valid? #t#f)) (newline)
(display "Inductive (1000 observations, 1000 confirming): ")
(display (exact->inexact (inductive-strong? 10001000))) (newline)
(display "Inductive (1000 observations, 950 confirming): ")
(display (exact->inexact (inductive-strong? 1000950)))
Notation reference
Term
Meaning
Premise
A statement assumed true for the argument
Conclusion
The statement the argument claims to establish
Valid
Impossible for premises true and conclusion false
Sound
Valid with actually true premises
Deductive
Claims necessary conclusion
Inductive
Claims probable conclusion
Neighbors
🔢 Levin Ch.3 — propositional and predicate logic in a discrete math context