How do you know if âÂÂby inspectionâ is a valid argument? [closed]

Clash Royale CLAN TAG#URR8PPP
up vote
1
down vote
favorite
Sometimes while certain deductions may seem obvious, they are only obvious because of much prior work.
For instance, even describing something as simple as $1+1=2$, you would first need to:
define group containing a set of objects $S$,
define the operation of addition such that $S times S rightarrow S$,
define that the set is closed under this operation $(S_1,S_2) rightarrow S_1+S_2$,
define that addition is associative $(S_1+S_2)+S_3=S_1+(S_2+S_3)$,
and it even continues on from there.
So, if you can't even argue âÂÂby inspectionâ for something as elementary as $1+1=2$, what exactly makes it valid for more complex derivations dealing with summations or matrices or special functions of a complex variable and etc.?
abstract-algebra algebra-precalculus proof-writing arithmetic
closed as primarily opinion-based by user99914, MathOverview, Lord Shark the Unknown, David Hill, Gibbs Sep 6 at 19:10
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
 |Â
show 4 more comments
up vote
1
down vote
favorite
Sometimes while certain deductions may seem obvious, they are only obvious because of much prior work.
For instance, even describing something as simple as $1+1=2$, you would first need to:
define group containing a set of objects $S$,
define the operation of addition such that $S times S rightarrow S$,
define that the set is closed under this operation $(S_1,S_2) rightarrow S_1+S_2$,
define that addition is associative $(S_1+S_2)+S_3=S_1+(S_2+S_3)$,
and it even continues on from there.
So, if you can't even argue âÂÂby inspectionâ for something as elementary as $1+1=2$, what exactly makes it valid for more complex derivations dealing with summations or matrices or special functions of a complex variable and etc.?
abstract-algebra algebra-precalculus proof-writing arithmetic
closed as primarily opinion-based by user99914, MathOverview, Lord Shark the Unknown, David Hill, Gibbs Sep 6 at 19:10
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
1
You don't need to show that $+$ is an operation of a group, you just need to define $+$ (and $1$ and $2$). It can be the case that $1+1=2$ even if addition isn't associative, say.
â Derek Elkins
Sep 6 at 3:10
5
"By inspection" is a nice way of saying "this is obvious and shouldn't need a lengthy explanation."
â Sean Roberson
Sep 6 at 3:10
1
1 + 1 = 2 is a definition, so I don't understand what it has to do with proof by inspection or any other kind of proof. Definitions are not subject to being proven.
â mathguy
Sep 6 at 3:11
1
@SeanRoberson - that is definitely incorrect. "By inspection" may be used when something must verified in a finite number of cases (for example: for each regular polyhedron); the proof may be very different in each case, but if all the proofs are correct, and it is known (from other work, or from first principles) that only those finitely many cases are possible, the overall statement is proved.
â mathguy
Sep 6 at 3:13
2
@mathguy I've definitely seen it used both ways. I think the way you describe is the "proper" way, but it is also used as "just prove this bit yourself, I'm busy."
â Noah Schweber
Sep 6 at 3:44
 |Â
show 4 more comments
up vote
1
down vote
favorite
up vote
1
down vote
favorite
Sometimes while certain deductions may seem obvious, they are only obvious because of much prior work.
For instance, even describing something as simple as $1+1=2$, you would first need to:
define group containing a set of objects $S$,
define the operation of addition such that $S times S rightarrow S$,
define that the set is closed under this operation $(S_1,S_2) rightarrow S_1+S_2$,
define that addition is associative $(S_1+S_2)+S_3=S_1+(S_2+S_3)$,
and it even continues on from there.
So, if you can't even argue âÂÂby inspectionâ for something as elementary as $1+1=2$, what exactly makes it valid for more complex derivations dealing with summations or matrices or special functions of a complex variable and etc.?
abstract-algebra algebra-precalculus proof-writing arithmetic
Sometimes while certain deductions may seem obvious, they are only obvious because of much prior work.
For instance, even describing something as simple as $1+1=2$, you would first need to:
define group containing a set of objects $S$,
define the operation of addition such that $S times S rightarrow S$,
define that the set is closed under this operation $(S_1,S_2) rightarrow S_1+S_2$,
define that addition is associative $(S_1+S_2)+S_3=S_1+(S_2+S_3)$,
and it even continues on from there.
So, if you can't even argue âÂÂby inspectionâ for something as elementary as $1+1=2$, what exactly makes it valid for more complex derivations dealing with summations or matrices or special functions of a complex variable and etc.?
abstract-algebra algebra-precalculus proof-writing arithmetic
abstract-algebra algebra-precalculus proof-writing arithmetic
edited Sep 6 at 10:05
Jendrik Stelzner
7,69121137
7,69121137
asked Sep 6 at 3:01
GaneGoe
455
455
closed as primarily opinion-based by user99914, MathOverview, Lord Shark the Unknown, David Hill, Gibbs Sep 6 at 19:10
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
closed as primarily opinion-based by user99914, MathOverview, Lord Shark the Unknown, David Hill, Gibbs Sep 6 at 19:10
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
1
You don't need to show that $+$ is an operation of a group, you just need to define $+$ (and $1$ and $2$). It can be the case that $1+1=2$ even if addition isn't associative, say.
â Derek Elkins
Sep 6 at 3:10
5
"By inspection" is a nice way of saying "this is obvious and shouldn't need a lengthy explanation."
â Sean Roberson
Sep 6 at 3:10
1
1 + 1 = 2 is a definition, so I don't understand what it has to do with proof by inspection or any other kind of proof. Definitions are not subject to being proven.
â mathguy
Sep 6 at 3:11
1
@SeanRoberson - that is definitely incorrect. "By inspection" may be used when something must verified in a finite number of cases (for example: for each regular polyhedron); the proof may be very different in each case, but if all the proofs are correct, and it is known (from other work, or from first principles) that only those finitely many cases are possible, the overall statement is proved.
â mathguy
Sep 6 at 3:13
2
@mathguy I've definitely seen it used both ways. I think the way you describe is the "proper" way, but it is also used as "just prove this bit yourself, I'm busy."
â Noah Schweber
Sep 6 at 3:44
 |Â
show 4 more comments
1
You don't need to show that $+$ is an operation of a group, you just need to define $+$ (and $1$ and $2$). It can be the case that $1+1=2$ even if addition isn't associative, say.
â Derek Elkins
Sep 6 at 3:10
5
"By inspection" is a nice way of saying "this is obvious and shouldn't need a lengthy explanation."
â Sean Roberson
Sep 6 at 3:10
1
1 + 1 = 2 is a definition, so I don't understand what it has to do with proof by inspection or any other kind of proof. Definitions are not subject to being proven.
â mathguy
Sep 6 at 3:11
1
@SeanRoberson - that is definitely incorrect. "By inspection" may be used when something must verified in a finite number of cases (for example: for each regular polyhedron); the proof may be very different in each case, but if all the proofs are correct, and it is known (from other work, or from first principles) that only those finitely many cases are possible, the overall statement is proved.
â mathguy
Sep 6 at 3:13
2
@mathguy I've definitely seen it used both ways. I think the way you describe is the "proper" way, but it is also used as "just prove this bit yourself, I'm busy."
â Noah Schweber
Sep 6 at 3:44
1
1
You don't need to show that $+$ is an operation of a group, you just need to define $+$ (and $1$ and $2$). It can be the case that $1+1=2$ even if addition isn't associative, say.
â Derek Elkins
Sep 6 at 3:10
You don't need to show that $+$ is an operation of a group, you just need to define $+$ (and $1$ and $2$). It can be the case that $1+1=2$ even if addition isn't associative, say.
â Derek Elkins
Sep 6 at 3:10
5
5
"By inspection" is a nice way of saying "this is obvious and shouldn't need a lengthy explanation."
â Sean Roberson
Sep 6 at 3:10
"By inspection" is a nice way of saying "this is obvious and shouldn't need a lengthy explanation."
â Sean Roberson
Sep 6 at 3:10
1
1
1 + 1 = 2 is a definition, so I don't understand what it has to do with proof by inspection or any other kind of proof. Definitions are not subject to being proven.
â mathguy
Sep 6 at 3:11
1 + 1 = 2 is a definition, so I don't understand what it has to do with proof by inspection or any other kind of proof. Definitions are not subject to being proven.
â mathguy
Sep 6 at 3:11
1
1
@SeanRoberson - that is definitely incorrect. "By inspection" may be used when something must verified in a finite number of cases (for example: for each regular polyhedron); the proof may be very different in each case, but if all the proofs are correct, and it is known (from other work, or from first principles) that only those finitely many cases are possible, the overall statement is proved.
â mathguy
Sep 6 at 3:13
@SeanRoberson - that is definitely incorrect. "By inspection" may be used when something must verified in a finite number of cases (for example: for each regular polyhedron); the proof may be very different in each case, but if all the proofs are correct, and it is known (from other work, or from first principles) that only those finitely many cases are possible, the overall statement is proved.
â mathguy
Sep 6 at 3:13
2
2
@mathguy I've definitely seen it used both ways. I think the way you describe is the "proper" way, but it is also used as "just prove this bit yourself, I'm busy."
â Noah Schweber
Sep 6 at 3:44
@mathguy I've definitely seen it used both ways. I think the way you describe is the "proper" way, but it is also used as "just prove this bit yourself, I'm busy."
â Noah Schweber
Sep 6 at 3:44
 |Â
show 4 more comments
1 Answer
1
active
oldest
votes
up vote
5
down vote
I'll give two explanations, not completely unrelated. In the vein of Sean Roberson's comment, it often is intended in an informal sense that the result can be shown with a bit of thought. To answer your question in that case, you choose to use it by gearing it to your target audience. If you have a subproof (that you've produced yourself and) that is uninteresting and for which you expect the readers to be able to provide themselves, then using "by inspection" may be appropriate.
At the complete opposite end of formality, consider mechanized theorem provers like Coq, Isabelle/HOL, Mizar, and Agda. In at least the ones based on dependent type theory, like Coq and Agda, a potentially huge (but finite) amount of computation can go into verifying a single step of a proof. In Agda, you might define the natural numbers as follows:
data Nat : Set where
Z : Nat
S : Nat -> Nat
with addition then defined recursively as follows:
_+_ : Nat -> Nat -> Nat
x + Z = x
x + (S y) = S (x + y)
We can define $1$ and $2$ via:
one : Nat
one = S Z
two : Nat
two = S (S Z)
We can then prove that one + one equals two via:
one_plus_one_equals_two : Id (one + one) two
one_plus_one_equals_two = Refl
where, for completeness, Id is defined as:
data Id A : Set (x : A) : A -> Set
Refl : Id x x
To verify that one_plus_one_equals_two is well-typed, and thus, effectively, a valid proof, we need to know whether one + one is the same as two. To do this, Agda computes one + one and two to normal form. If they have the same normal form, then they are considered the same. In this case, that normal form is S (S Z). Note that it does require some computation via the definition of + to reduce one + one to S (S Z).1
You do not need to justify the steps of computation. A mechanized proof checker for Agda is expected to be able to perform these computations itself. This is one formal perspective on steps which might be said to be show "by inspection". Indeed, often statements that are asserted to be try "by inspection" are straight computations. This is largely consistent with mathguy's comment. In other words, if it is a purely mechanical computation, then "by inspection" would almost certainly be reasonable. For an informal proof, you'd still want to tailor this to your audience. There are a surprisingly large number of things that can be verified purely mechanically. I recommend the book A=B for some non-trivial examples. I probably would spell out some of the details of the equality of two hypergeometric series, even though they are mechanical verifiable.
For example, checking whether two polynomials with rational coefficients are equal is a purely mechanical process. If my proof relied on the fact that two polynomial expressions were equal, I would not painstakingly go through a step by step argument in terms of the axioms of commutative ring theory. I would just throw them into a computer algebra system to make sure, and then just assert that they are equal with little to no argument in the informal proof. With a little care, you can arrange it so that Agda can compute the proof that two polynomials are equal. This is what the RingSolver module does. Doing so leaves a potentially large and non-trivial computation to the proof checker, but it is a completely mechanical process that's completely specified by the computational rules that are part of the definition of Agda itself. This is a formal analogue of leaving it up to the reader to check the equality of two polynomials.
1 Note that Agda can't solve just any equality automatically. If you ask it the equivalent of whether x + Z = x, it will happily immediately say it is via the first line of the definition of +. However, if you ask it the equivalent of whether Z + x = x, it is unable to show this just by computation. The definition of + does not specify how to handle the case where the second argument is a variable.
Upvoting not for the mention of my comment, but for really expanding it and putting into words what I couldn't. Most of "by inspection" is interpreted in my mind as "left to the reader," "one can show...", or even "hey dummy, you should be able to do this."
â Sean Roberson
Sep 6 at 7:45
add a comment |Â
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
5
down vote
I'll give two explanations, not completely unrelated. In the vein of Sean Roberson's comment, it often is intended in an informal sense that the result can be shown with a bit of thought. To answer your question in that case, you choose to use it by gearing it to your target audience. If you have a subproof (that you've produced yourself and) that is uninteresting and for which you expect the readers to be able to provide themselves, then using "by inspection" may be appropriate.
At the complete opposite end of formality, consider mechanized theorem provers like Coq, Isabelle/HOL, Mizar, and Agda. In at least the ones based on dependent type theory, like Coq and Agda, a potentially huge (but finite) amount of computation can go into verifying a single step of a proof. In Agda, you might define the natural numbers as follows:
data Nat : Set where
Z : Nat
S : Nat -> Nat
with addition then defined recursively as follows:
_+_ : Nat -> Nat -> Nat
x + Z = x
x + (S y) = S (x + y)
We can define $1$ and $2$ via:
one : Nat
one = S Z
two : Nat
two = S (S Z)
We can then prove that one + one equals two via:
one_plus_one_equals_two : Id (one + one) two
one_plus_one_equals_two = Refl
where, for completeness, Id is defined as:
data Id A : Set (x : A) : A -> Set
Refl : Id x x
To verify that one_plus_one_equals_two is well-typed, and thus, effectively, a valid proof, we need to know whether one + one is the same as two. To do this, Agda computes one + one and two to normal form. If they have the same normal form, then they are considered the same. In this case, that normal form is S (S Z). Note that it does require some computation via the definition of + to reduce one + one to S (S Z).1
You do not need to justify the steps of computation. A mechanized proof checker for Agda is expected to be able to perform these computations itself. This is one formal perspective on steps which might be said to be show "by inspection". Indeed, often statements that are asserted to be try "by inspection" are straight computations. This is largely consistent with mathguy's comment. In other words, if it is a purely mechanical computation, then "by inspection" would almost certainly be reasonable. For an informal proof, you'd still want to tailor this to your audience. There are a surprisingly large number of things that can be verified purely mechanically. I recommend the book A=B for some non-trivial examples. I probably would spell out some of the details of the equality of two hypergeometric series, even though they are mechanical verifiable.
For example, checking whether two polynomials with rational coefficients are equal is a purely mechanical process. If my proof relied on the fact that two polynomial expressions were equal, I would not painstakingly go through a step by step argument in terms of the axioms of commutative ring theory. I would just throw them into a computer algebra system to make sure, and then just assert that they are equal with little to no argument in the informal proof. With a little care, you can arrange it so that Agda can compute the proof that two polynomials are equal. This is what the RingSolver module does. Doing so leaves a potentially large and non-trivial computation to the proof checker, but it is a completely mechanical process that's completely specified by the computational rules that are part of the definition of Agda itself. This is a formal analogue of leaving it up to the reader to check the equality of two polynomials.
1 Note that Agda can't solve just any equality automatically. If you ask it the equivalent of whether x + Z = x, it will happily immediately say it is via the first line of the definition of +. However, if you ask it the equivalent of whether Z + x = x, it is unable to show this just by computation. The definition of + does not specify how to handle the case where the second argument is a variable.
Upvoting not for the mention of my comment, but for really expanding it and putting into words what I couldn't. Most of "by inspection" is interpreted in my mind as "left to the reader," "one can show...", or even "hey dummy, you should be able to do this."
â Sean Roberson
Sep 6 at 7:45
add a comment |Â
up vote
5
down vote
I'll give two explanations, not completely unrelated. In the vein of Sean Roberson's comment, it often is intended in an informal sense that the result can be shown with a bit of thought. To answer your question in that case, you choose to use it by gearing it to your target audience. If you have a subproof (that you've produced yourself and) that is uninteresting and for which you expect the readers to be able to provide themselves, then using "by inspection" may be appropriate.
At the complete opposite end of formality, consider mechanized theorem provers like Coq, Isabelle/HOL, Mizar, and Agda. In at least the ones based on dependent type theory, like Coq and Agda, a potentially huge (but finite) amount of computation can go into verifying a single step of a proof. In Agda, you might define the natural numbers as follows:
data Nat : Set where
Z : Nat
S : Nat -> Nat
with addition then defined recursively as follows:
_+_ : Nat -> Nat -> Nat
x + Z = x
x + (S y) = S (x + y)
We can define $1$ and $2$ via:
one : Nat
one = S Z
two : Nat
two = S (S Z)
We can then prove that one + one equals two via:
one_plus_one_equals_two : Id (one + one) two
one_plus_one_equals_two = Refl
where, for completeness, Id is defined as:
data Id A : Set (x : A) : A -> Set
Refl : Id x x
To verify that one_plus_one_equals_two is well-typed, and thus, effectively, a valid proof, we need to know whether one + one is the same as two. To do this, Agda computes one + one and two to normal form. If they have the same normal form, then they are considered the same. In this case, that normal form is S (S Z). Note that it does require some computation via the definition of + to reduce one + one to S (S Z).1
You do not need to justify the steps of computation. A mechanized proof checker for Agda is expected to be able to perform these computations itself. This is one formal perspective on steps which might be said to be show "by inspection". Indeed, often statements that are asserted to be try "by inspection" are straight computations. This is largely consistent with mathguy's comment. In other words, if it is a purely mechanical computation, then "by inspection" would almost certainly be reasonable. For an informal proof, you'd still want to tailor this to your audience. There are a surprisingly large number of things that can be verified purely mechanically. I recommend the book A=B for some non-trivial examples. I probably would spell out some of the details of the equality of two hypergeometric series, even though they are mechanical verifiable.
For example, checking whether two polynomials with rational coefficients are equal is a purely mechanical process. If my proof relied on the fact that two polynomial expressions were equal, I would not painstakingly go through a step by step argument in terms of the axioms of commutative ring theory. I would just throw them into a computer algebra system to make sure, and then just assert that they are equal with little to no argument in the informal proof. With a little care, you can arrange it so that Agda can compute the proof that two polynomials are equal. This is what the RingSolver module does. Doing so leaves a potentially large and non-trivial computation to the proof checker, but it is a completely mechanical process that's completely specified by the computational rules that are part of the definition of Agda itself. This is a formal analogue of leaving it up to the reader to check the equality of two polynomials.
1 Note that Agda can't solve just any equality automatically. If you ask it the equivalent of whether x + Z = x, it will happily immediately say it is via the first line of the definition of +. However, if you ask it the equivalent of whether Z + x = x, it is unable to show this just by computation. The definition of + does not specify how to handle the case where the second argument is a variable.
Upvoting not for the mention of my comment, but for really expanding it and putting into words what I couldn't. Most of "by inspection" is interpreted in my mind as "left to the reader," "one can show...", or even "hey dummy, you should be able to do this."
â Sean Roberson
Sep 6 at 7:45
add a comment |Â
up vote
5
down vote
up vote
5
down vote
I'll give two explanations, not completely unrelated. In the vein of Sean Roberson's comment, it often is intended in an informal sense that the result can be shown with a bit of thought. To answer your question in that case, you choose to use it by gearing it to your target audience. If you have a subproof (that you've produced yourself and) that is uninteresting and for which you expect the readers to be able to provide themselves, then using "by inspection" may be appropriate.
At the complete opposite end of formality, consider mechanized theorem provers like Coq, Isabelle/HOL, Mizar, and Agda. In at least the ones based on dependent type theory, like Coq and Agda, a potentially huge (but finite) amount of computation can go into verifying a single step of a proof. In Agda, you might define the natural numbers as follows:
data Nat : Set where
Z : Nat
S : Nat -> Nat
with addition then defined recursively as follows:
_+_ : Nat -> Nat -> Nat
x + Z = x
x + (S y) = S (x + y)
We can define $1$ and $2$ via:
one : Nat
one = S Z
two : Nat
two = S (S Z)
We can then prove that one + one equals two via:
one_plus_one_equals_two : Id (one + one) two
one_plus_one_equals_two = Refl
where, for completeness, Id is defined as:
data Id A : Set (x : A) : A -> Set
Refl : Id x x
To verify that one_plus_one_equals_two is well-typed, and thus, effectively, a valid proof, we need to know whether one + one is the same as two. To do this, Agda computes one + one and two to normal form. If they have the same normal form, then they are considered the same. In this case, that normal form is S (S Z). Note that it does require some computation via the definition of + to reduce one + one to S (S Z).1
You do not need to justify the steps of computation. A mechanized proof checker for Agda is expected to be able to perform these computations itself. This is one formal perspective on steps which might be said to be show "by inspection". Indeed, often statements that are asserted to be try "by inspection" are straight computations. This is largely consistent with mathguy's comment. In other words, if it is a purely mechanical computation, then "by inspection" would almost certainly be reasonable. For an informal proof, you'd still want to tailor this to your audience. There are a surprisingly large number of things that can be verified purely mechanically. I recommend the book A=B for some non-trivial examples. I probably would spell out some of the details of the equality of two hypergeometric series, even though they are mechanical verifiable.
For example, checking whether two polynomials with rational coefficients are equal is a purely mechanical process. If my proof relied on the fact that two polynomial expressions were equal, I would not painstakingly go through a step by step argument in terms of the axioms of commutative ring theory. I would just throw them into a computer algebra system to make sure, and then just assert that they are equal with little to no argument in the informal proof. With a little care, you can arrange it so that Agda can compute the proof that two polynomials are equal. This is what the RingSolver module does. Doing so leaves a potentially large and non-trivial computation to the proof checker, but it is a completely mechanical process that's completely specified by the computational rules that are part of the definition of Agda itself. This is a formal analogue of leaving it up to the reader to check the equality of two polynomials.
1 Note that Agda can't solve just any equality automatically. If you ask it the equivalent of whether x + Z = x, it will happily immediately say it is via the first line of the definition of +. However, if you ask it the equivalent of whether Z + x = x, it is unable to show this just by computation. The definition of + does not specify how to handle the case where the second argument is a variable.
I'll give two explanations, not completely unrelated. In the vein of Sean Roberson's comment, it often is intended in an informal sense that the result can be shown with a bit of thought. To answer your question in that case, you choose to use it by gearing it to your target audience. If you have a subproof (that you've produced yourself and) that is uninteresting and for which you expect the readers to be able to provide themselves, then using "by inspection" may be appropriate.
At the complete opposite end of formality, consider mechanized theorem provers like Coq, Isabelle/HOL, Mizar, and Agda. In at least the ones based on dependent type theory, like Coq and Agda, a potentially huge (but finite) amount of computation can go into verifying a single step of a proof. In Agda, you might define the natural numbers as follows:
data Nat : Set where
Z : Nat
S : Nat -> Nat
with addition then defined recursively as follows:
_+_ : Nat -> Nat -> Nat
x + Z = x
x + (S y) = S (x + y)
We can define $1$ and $2$ via:
one : Nat
one = S Z
two : Nat
two = S (S Z)
We can then prove that one + one equals two via:
one_plus_one_equals_two : Id (one + one) two
one_plus_one_equals_two = Refl
where, for completeness, Id is defined as:
data Id A : Set (x : A) : A -> Set
Refl : Id x x
To verify that one_plus_one_equals_two is well-typed, and thus, effectively, a valid proof, we need to know whether one + one is the same as two. To do this, Agda computes one + one and two to normal form. If they have the same normal form, then they are considered the same. In this case, that normal form is S (S Z). Note that it does require some computation via the definition of + to reduce one + one to S (S Z).1
You do not need to justify the steps of computation. A mechanized proof checker for Agda is expected to be able to perform these computations itself. This is one formal perspective on steps which might be said to be show "by inspection". Indeed, often statements that are asserted to be try "by inspection" are straight computations. This is largely consistent with mathguy's comment. In other words, if it is a purely mechanical computation, then "by inspection" would almost certainly be reasonable. For an informal proof, you'd still want to tailor this to your audience. There are a surprisingly large number of things that can be verified purely mechanically. I recommend the book A=B for some non-trivial examples. I probably would spell out some of the details of the equality of two hypergeometric series, even though they are mechanical verifiable.
For example, checking whether two polynomials with rational coefficients are equal is a purely mechanical process. If my proof relied on the fact that two polynomial expressions were equal, I would not painstakingly go through a step by step argument in terms of the axioms of commutative ring theory. I would just throw them into a computer algebra system to make sure, and then just assert that they are equal with little to no argument in the informal proof. With a little care, you can arrange it so that Agda can compute the proof that two polynomials are equal. This is what the RingSolver module does. Doing so leaves a potentially large and non-trivial computation to the proof checker, but it is a completely mechanical process that's completely specified by the computational rules that are part of the definition of Agda itself. This is a formal analogue of leaving it up to the reader to check the equality of two polynomials.
1 Note that Agda can't solve just any equality automatically. If you ask it the equivalent of whether x + Z = x, it will happily immediately say it is via the first line of the definition of +. However, if you ask it the equivalent of whether Z + x = x, it is unable to show this just by computation. The definition of + does not specify how to handle the case where the second argument is a variable.
edited Sep 6 at 4:26
answered Sep 6 at 4:21
Derek Elkins
15.4k11035
15.4k11035
Upvoting not for the mention of my comment, but for really expanding it and putting into words what I couldn't. Most of "by inspection" is interpreted in my mind as "left to the reader," "one can show...", or even "hey dummy, you should be able to do this."
â Sean Roberson
Sep 6 at 7:45
add a comment |Â
Upvoting not for the mention of my comment, but for really expanding it and putting into words what I couldn't. Most of "by inspection" is interpreted in my mind as "left to the reader," "one can show...", or even "hey dummy, you should be able to do this."
â Sean Roberson
Sep 6 at 7:45
Upvoting not for the mention of my comment, but for really expanding it and putting into words what I couldn't. Most of "by inspection" is interpreted in my mind as "left to the reader," "one can show...", or even "hey dummy, you should be able to do this."
â Sean Roberson
Sep 6 at 7:45
Upvoting not for the mention of my comment, but for really expanding it and putting into words what I couldn't. Most of "by inspection" is interpreted in my mind as "left to the reader," "one can show...", or even "hey dummy, you should be able to do this."
â Sean Roberson
Sep 6 at 7:45
add a comment |Â
1
You don't need to show that $+$ is an operation of a group, you just need to define $+$ (and $1$ and $2$). It can be the case that $1+1=2$ even if addition isn't associative, say.
â Derek Elkins
Sep 6 at 3:10
5
"By inspection" is a nice way of saying "this is obvious and shouldn't need a lengthy explanation."
â Sean Roberson
Sep 6 at 3:10
1
1 + 1 = 2 is a definition, so I don't understand what it has to do with proof by inspection or any other kind of proof. Definitions are not subject to being proven.
â mathguy
Sep 6 at 3:11
1
@SeanRoberson - that is definitely incorrect. "By inspection" may be used when something must verified in a finite number of cases (for example: for each regular polyhedron); the proof may be very different in each case, but if all the proofs are correct, and it is known (from other work, or from first principles) that only those finitely many cases are possible, the overall statement is proved.
â mathguy
Sep 6 at 3:13
2
@mathguy I've definitely seen it used both ways. I think the way you describe is the "proper" way, but it is also used as "just prove this bit yourself, I'm busy."
â Noah Schweber
Sep 6 at 3:44