# Finally, the fried chicken proof you’ve been searching for

Russell, my co-blogger over at Blinded Trials, and I text each other…rather frequently. Since we’ve been doing our sub-blog (which is a total blast!), a continual source of texting delight for us is the search terms that people use to find us. What made that person search for *that*? What made them click through to us? What did they make of our post when they did? Usually these involve some outlandishly entertaining misspelled sexual proclivity.

A recent search term was a little different. It was, “articles proving popeyes is better than kfc.” And Russell and I wondered, as usual, how this person ended up on our blog. And then we wondered: *proof*? The person wants proof? Not just a discussion of various merits ending in an opinion? I mean, I’m an anti-relativist, but that’s hardcore even for me.

While I’ve never eaten at a Popeye’s and only once at a KFC, proofs are part of my line. So Russell suggested that I prove it logically. And so, if anyone wants proof that Popeye’s is better than KFC, here it is. NB: a valid proof only. For a sound proof, you’ll have to keep googling. [Updated to reflect Mike Schilling’s corrections – thanks, Mike!]

Predicates:

R = is a restaurant

O = uses Original Recipe

S = uses 11 herbs and spices

F = serves food that is Finger-lickin’ good

C = is Cajun flavored

G = is Good Ba-You

B = better than

E = serves crawfish etouffee

U = serves frankfurters

N = is a nightclub

P = Popeye’s

K = KFC

Premises:

1. (x) ^{4} –> Bxy)

5. (x) (Gx –> ~Fx)

6. Ep V Up

7. ~Up

8. Rp V Np

9. ~Np

10. Rk V Nk

11. ~Nk

12. Ek V Ok

13. ~Ek

14. Sk V Uk

15. ~Uk

To prove: Bpk

16. (y) ^{5} –> Bpy) UI 4

17. ^{6} –> Bpk UI 4

18. Ep DS 6,7

19. Rp DS 8,9

20. Rp & Ep Conj. 18,19

21. (Rp & Ep) –> Cp UI 3

22. Cp MP 20, 21

23. Rp & Cp Conj. 19, 22

24. (Rp & Cp) –> Gp UI 2

25. Gp MP 23, 24

26. Rp & Gp Conj. 19, 25

27. Rk DS 10, 11

28. Ok DS 12, 13

29. Sk DS 14, 15

30. (Rk & Ok & Sk) –> Fk UI 1

31. Rk & Ok & Sk Conj. 27, 28, 29

32. Fk MP 30, 31

33. Gp –> ~Fp UI 5

34. ~Fp MP 25, 33

35. ~Rp V ~Fp DI 34

36. ~ (Rp & Fp) DM 35

37. ~ (Rp & Gp) V ~(Rp & Fp) DI 36

38. ~^{7} DM 37

39. Rk & Fk Conj. 27, 32

40. (Rp & Gp) & (Rk & Fk) Conj. 26, 39

41. Bpk MP 17, 40

Hold on. 5 implies that B is reflexive (let x = y), and thus not a strict ordering, so you also need to prove that ~Bkp. This is most simply done with the additional axioms:

(A) Rk

(B) Ok

(C) Sk

(D) Cx -> ~Fx

A, B, and C together with 1 imply Fk, while D together with 16 gives ~Fp. SInce both Rp and Rk, by 3, ~Bkp. QED.Report

But “better than” is relational, but not reflexive. That said, I meant to do something like your A through D, and that’s why I had premises 1 and 3, but I totally forgot. Still valid.Report

I’m not sure how you get no 3:

`(x) (y) (((Rx & Fx) & (Ry & ~Fy)) –> ~Bxy)`

or are you simply assuming itReport

Murali, 1-9 are assumed premises.Report

But “better than” is relational, but not reflexive.Then 5 has to become something like:

5a (x) (y) ((Rx & Gx) & (~Ry | ~Gy))–> Bxy)

Given the current 5, 13, and 19, you can conclude Bpp. I.e. B means “at least as good as”, not “better than”.Report

Yeah, you’re right. Sorry about that. But Bpp would mean Popeye’s is better than Popeye’s, no? Not at least as good as. I think the problem can be solved by adding x is not equal to y in premise 5, and adding another premise that ~Gk (to prevent UI of 2 or 4 with KFC), right?Report

Wait. You were totally right the first time. Instantiate k as R, O, and S, and make premise 5 that (x) (y) (((Rx & Gx) & (Ry & Fy)) –> Bxy). Which gets more to the heart of the matter anyway.Report

But Bpp would mean Popeye’s is better than Popeye’s, no? Not at least as good as.Maybe this is a difference between how philosophers use logic and how mathematicians do. You started with “truths” and expressed them as axioms, to see what consequences you could derive. I started by viewing the axioms purely as formalisms, and tried to determine what semantics they described (e.g, that since Bxy is reflexive, it must be analogous to >= rather than strict >.)

And programmers use the converse of this: given a real-world problem, find (or, if need be, build) something whose “axioms” generate the right semantics to describe it. Java, for instance, provides a number of types that represent collections of things:

These are all quite abstract, that is, not intended to solve any specific problem. Using them requires mapping the semantics of the actual problem onto the semantics of the particular collection, e.g.

We’re going to process a collection of vehicle registrations, and we want to discard any duplicates. We’ll put them in a Set, and throw away any we’ve already done.

And, having done this mapping, we can pick a type of collection and use all of its facilities, knowing that they’re both correct and likely to be useful.Report