# Summary and Strategies

When examining more complex propositional logic sequents, it can be challenging to know where to start. In this section, we summarize all available rules in propositional logic, and discuss stratgies for approaching proofs.

## AND rules

Rule summaries:

```
P Q P ∧ Q P ∧ Q
AndI : --------- AndE1 : ---------- AndE2 : ----------
P ∧ Q P Q
```

Rule syntax summaries:

```
...
x ( p ) by (...),
y ( q ) by (...),
z ( p ∧ q ) by AndI(x, y),
...
```

```
...
x ( p ∧ q ) by (...),
y ( p ) by AndE1(x),
z ( q ) by AndE2(y),
...
```

## OR rules

Rule summaries:

```
SubProof( SubProof(
Assume ( P ), Assume (Q ),
P ∨ Q ... ...
R ... R } R
P Q ), ),
OrI1 : --------- OrI2 : ---------- OrE : -------------------------------------------------------
P ∨ Q P ∨ Q R
```

Rule syntax summaries:

```
...
x ( p ) by (...),
y ( p ∨ q ) by AndE1(x),
...
```

```
...
x ( q ) by (...),
y ( p ∨ q ) by AndE2(x),
...
```

```
...
a ( p ∨ q ) by (...),
b SubProof(
c Assume( p ),
...
d ( r ) by (...)
),
f SubProof(
g Assume( q ),
...
h ( r ) by (...)
),
i ( r ) by OrE(a, b, f),
```

## Implies rules

Rule summaries:

```
SubProof(
Assume( P ),
...
Q
P → Q P ),
ImplyE : ------------- ImplyI : ----------------
Q P → Q
```

Rule syntax summaries:

```
...
x ( p → q ) by (...),
y ( p ) by (...),
z ( q ) by ImplyE(x, y),
...
```

```
...
a SubProof(
b Assume( p ),
...
c ( q ) by (...)
),
d ( p → q ) by ImplyI(a),
...
```

## Negation rules

Rule summaries:

```
P ¬P
NegE : ----------
F
SubProof(
Assume ( P ),
...
F
),
NegI : --------------
¬P
F
BottomE : ------ for any proposition, Q, at all
Q
SubProof(
Assume( ¬P ),
...
F
),
PbC: --------------------
P
```

Rule syntax summaries:

```
...
x ( p ) by (...),
y ( ¬p ) by (...),
z ( F ) by NegE(x, y),
...
```

```
...
a SubProof(
b Assume( p ),
...
c ( F ) by (...)
),
d ( ¬p ) by NegI(a),
...
```

```
...
x ( F ) by (...),
y ( q ) by BottomE(x),
...
```

```
...
a SubProof(
b Assume( ¬p ),
...
c ( F ) by (...)
),
d ( p ) by PbC(a),
...
```

## Strategies

- Write down all premises first. Can you extract anything from the premises?
- If you have
`p∧q`

, use`AndE1`

to extract`p`

by itself and then`AndE2`

to extract`q`

by itself. - If you have
`p→q`

and`p`

, use`ImplyE`

to get`q`

. - If you have
`p`

and`¬p`

, use`NegE`

to claim a contradiction,`F`

.

- If you have
- Look at the top-level operator of what you are trying to prove.
Are you trying to prove something of the form

`p→q`

?- Use
`ImplyI`

. Open a subproof, assume`p`

, and get to`q`

by the end of the subproof. After the subproof, use`ImplyI`

to conclude`p→q`

.

- Use
Are you trying to prove something of the form

`¬p`

?- Use
`NegI`

. Open a subproof, assume`p`

, and get a contradiction,`F`

, by the end of the subproof. After the subproof, use`NegI`

to conclude`¬p`

.

- Use
Are you trying to prove something of the form

`p ∧ q`

?- Try to prove
`p`

by itself and then`q`

by itself. Afterward, use`AndI`

to conclude`p ∧ q`

.

- Try to prove
Are you trying to prove something of the form

`p ∨ q`

?- See if you have either
`p`

or`q`

by itself – if you do, use either`OrI1`

or`OrI2`

to conclude`p ∨ q`

.

- See if you have either

- You’ll need to nest the approaches from step 2. Once you are in a subproof, think about what you are
*trying to prove by the end of that subproof*. Follow the strategy in step 2 to prove your current goal, nesting subproofs as needed. As you work, stop and scan the propositions that you have available. See if you can extract anything from them as you did for the premises in step 1. - No match, or still stuck?
- Do you have an OR statement available? Try using OR elimination to prove your goal conclusion.
- Do your propositions have NOT operators, but don’t fit the form for using
`¬i`

? Try using`PbC`

. If you are trying to prove something of the form`p`

, open a subproof, assume`¬p`

, and try to reach a contradiction by the end of the subproof. Afterward, use`PbC`

to conclude`p`

. - As a last resort, try pasting in the proof for the law of the excluded middle (see section 4.5). Then use OR elimination on
`p ∨ ¬p`

.

Proofs can be quite challenging. You might follow one approach, get stuck, and not be able to make progress. If this happens, backtrack and follow a different approach. If you are using Logika to verify your work, make sure it does not mark any lines in the proof in red – this means that you’ve made an invalid conclusion along the way, or that your justification for a particular line doesn’t follow the expected format. Try to fix these errors before continuing on with the proof.