Is it possible to define argument validity as a formula?


Let A, B and C be propositions. Define ARG(A, B, C) as the following argument:

  1. A.
  2. B.
  3. Therefore, C.

My goal is to create a formula whose truth value is equivalent to "ARG(A, B, C) is valid". In other words, I am looking for a formula that yields true if and only if the argument is valid.

Attempt #1

ARG(A, B, C) is valid if and only if (A ∧ B) → C

Unfortunately, this attempt does not work. Proof: the following argument is invalid (source: third example on wikipedia here), but (A ∧ B) → C yields true (since A is false):

  1. All men are immortal.
  2. Socrates is a man.
  3. Therefore, Socrates is mortal.

Attempt #2

ARG(A, B, C) is valid if and only if A ∧ B ∧ ((A ∧ B) → C)

Unfortuntately, this attempt also does not work, because although it works for the example above, this attempt yields false for any argument that has a false premise (and it is known that there are valid arguments with false premises).

I tried to create other attempts but I'm stuck.

Is this impossible? If yes, why (can you give a proof)? If it's possible, what would be the formula?

Pedro A

Posted 2018-08-30T01:21:44.660

Reputation: 206

1Are you not confusing validity with truth here? – Mozibur Ullah – 2018-08-30T01:28:41.310

@MoziburUllah Honestly, no. Or so I think, at least. Why did you think that? – Pedro A – 2018-08-30T01:29:36.107

@MoziburUllah I've added a clarification in the beginning of the question (not sure if related or not to your thoughts though). – Pedro A – 2018-08-30T01:32:54.513

There are many types of logic. What is valid in Aristotelian logic is not the same as valid in the Mathematical logic. It looks like you are more into Mathematical logic. If you are trying to find a way to prove validity in every logic system with your program that would be interesting indeed. I also think you are confusing TRUTH with the concept of VALIDITY. Truth be truth table does not always yield TRUE in the real world. – Logikal – 2018-08-30T02:10:59.377

Because of attempt one: which basically has the form 'p is true iff q is true'. – Mozibur Ullah – 2018-08-30T02:11:20.667

Which is only of value when propositions p & q are essentially the same proposition but written in different ways. – Mozibur Ullah – 2018-08-30T02:12:10.617

Ditto for your second attempt. – Mozibur Ullah – 2018-08-30T02:14:08.230

1Validity (and structure of formula) does not depend on truth of premises or conclusions, Since there is no dependence, for any formula we can find a counterexample. – rus9384 – 2018-08-30T02:35:45.357

Obviously, you have to work in the meta-language: Valid[ARG(A,B,C)] iff Taut[(A ∧ B) → C]. – Mauro ALLEGRANZA – 2018-08-30T06:05:02.557

@rus9384 Interesting. That feels right, but I'm not entirely convinced yet. Could you expand that into an answer, giving some more details for this "proof" of yours? That would be great, thanks :) – Pedro A – 2018-08-30T11:16:46.727

1@MauroALLEGRANZA Thanks!! This kind of thing is what I'm looking for. But, I'm not sure I follow: if Val is the set of all valuations, surely for any given proposition P, I can manually define one valuation that yields 0 for P and then P would not be a tautology. Then I'd conclude that there are no tautologies, implying that all arguments are invalid. What am I missing? – Pedro A – 2018-08-30T11:21:16.853

@MauroALLEGRANZA Ah, so not all propositions, just atomic ones. Indeed you've said that before, sorry. But I don't know what is an atomic proposition. Can you put all your comments together in an answer and explain what are atomic propositions? Thanks :) – Pedro A – 2018-08-30T12:52:19.863

I have the feeling this is a technical question that I don't understand. But if you're trying to assess the truth of an argument with logic you're into a looser. An argument can be an agregious fallacy and yet still true. My father tells me that the scar on my lip was caused by a specific incident. Is this true? Well it's argument from authority.. and yet.. true it is. – Richard – 2018-09-01T01:59:56.447



The general form of the answer would be:

[p, ξ, N(ξ)]

Ok, now that I’ve got my dumb Wittgenstein joke out of the way, a more serious answer.

The definition of logical validity is that an argument is valid if and only if the conclusion cannot be false when all the premises are true. We can symbolise that fairly straightforwardly:

ARG(A,...,Z, ξ) is valid if A ∧ ... ∧ Z ≡ ξ

Where A,...,Z is any number of premises, A ∧ ... ∧ Z is the conjunction of all the premises and ξ is the conclusion or, in other words, if the conjunction of all the premises is logically equivalent to the conclusion.

Informally, this should work since the above formula entails that the conclusion cannot be false when all the premises are true and, equivalently, that the conclusion will be false if any of the premises are false. I’m not clever enough to come up with a formal proof for this, but I suspect such a proof is impossible.


Posted 2018-08-30T01:21:44.660

Reputation: 1 560

You are violating the task: conclusion can be arbitrary while your A ∧ ... ∧ Z ≡ ξ is a fixed conclusion. – rus9384 – 2018-08-30T02:47:30.620

I’m not sure I understand your objection. ξ in my formula stands for any conclusion whatsoever. – ig0774 – 2018-08-30T02:49:35.497

Well, conclusion must not be A ∧ ... ∧ Z ≡ ξ. It can be A ∧ ... ∧ Z !≡ ξ – rus9384 – 2018-08-30T02:51:02.767

I think you’re fundamentally misunderstanding what that formula is. I’m not saying that that formula is the only valid argument; I’m saying any valid argument can be be rewritten as that formula. The counter-example you give cannot serve as a formula for logical validity because it expresses that the conclusion is only true if at least one of the premises is false. – ig0774 – 2018-08-30T02:55:38.533

More concretely, I’m saying the valid argument given in the OP can be rewritten as A & B = C (sorry for the change in notion; I’m on a phone) and similarly any valid argument can be rewritten into this form. – ig0774 – 2018-08-30T03:00:57.880

1I am not sure this even solves the failure of attempt #1 in the question. You are seemingly misunderstanding what OP is asking. OP's ARG(A, B, C) is defined as (A ∧ B) → C, but what formula, being independent on validity of ARG(A, B, C) and being dependent only on A, B and C, could show the validity of ARG(A, B, C)? – rus9384 – 2018-08-30T03:07:45.737

Sorry to take long to give feedback. Please consider the following argument: "All cups are mortal. Socrates is a cup. Therefore, Socrates is mortal." This argument is valid, but it is not the case that A ∧ B ≡ C (assuming that ≡ means "if and only if"). Do you agree? I think this is a counterexample to your attempt. – Pedro A – 2018-09-02T12:44:37.313


Obviously, you have to work in the meta-language (see : tautology) :

Valid[ARG(A,B,C)] iff Taut[(A ∧ B) → C].

We may define the function Taut assuming a certain amount of set-theory: we have to define the object truth-valuation i.e. a function

v : Prop → { 0,1 },

where Prop is the set of propositional atoms (or propositional variables) of the language : P1, P2, P3,...

Then we extend the valuations to all formulas of the language using the usual truth-tables for the propositional connectives.

Example : if formula α is P1 ∧ P2 and we have v(P1)=1 and v(P2)=0, then v(α)=0, and so on.

Having defined the set Val of all valuations, we have :

Taut[α] iff ∀v ∈ Val : v(α)=1.

All this "machinery" needs a meta-language; thus, it is difficult to manufacture a formula of the language itself that can express the "semantical" properties of the language.

See : Self-Reference, Liar Paradox, Tarski's Truth Definitions and Arithmetization of the Formal Language.


Posted 2018-08-30T01:21:44.660

Reputation: 33 575

Thanks. It is still not clear to me the difference between "propositional atoms" and "proposition". Can you give and example of a proposition that is not and propositional atom and one that is? This the last step for me to fully understand your answer. – Pedro A – 2018-09-01T02:44:49.593

@PedroA - A is an "atom" and A ∧ B is a "complex proposition : the first one is "indecomposable (according to the syntax of prop logic). – Mauro ALLEGRANZA – 2018-09-02T21:36:25.533