<div dir="ltr"><div>I was aware that equation (1) is stronger than (2) without extensionality, but I'm curious why this is a problem, since it is an axiom of the system and doesn't require proof. Any v5 proof that starts with (2) can easily be rebuilt to use (1), while conversely for a v6 proof there are very few theorems that follow from (1) but not (2) in the absence of extensionality (mostly trivial restatements of (1) itself), and I expect that any proof that starts from (1) will immediately wrap it with appThm, upon which point it will again be equivalent to (2).<br><br></div>Mario<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Nov 6, 2014 at 1:31 AM, Joe Leslie-Hurd <span dir="ltr"><<a href="mailto:joe@gilith.com" target="_blank">joe@gilith.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Now that there is a release of the opentheory tool for processing<br>
version 6 articles, and I am sitting on a release of the standard<br>
theory library that uses version 6 articles, I'd like to finalize<br>
version 6 of the article file format standard, which is currently in<br>
draft mode:<br>
<br>
<a href="http://www.gilith.com/research/opentheory/article.html" target="_blank">http://www.gilith.com/research/opentheory/article.html</a><br>
<br>
The commands that are new in version 6 are highlighted in yellow and<br>
the command with changed semantics (defineTypeOp) is highlighted in<br>
red. We have discussed the changes on this list, so there shouldn't be<br>
any surprises in store.<br>
<br>
Actually, there is one minor change that hasn't been discussed before.<br>
During implementation work on defineTypeOp I discovered that one of<br>
Mario's proposed theorems<br>
<br>
⊦ p = (\r. rep (abs r) = r) (1)<br>
<br>
required the axiom of extensionality to be logically equivalent to the<br>
same theorem produced by version 5 of defineTypeOp:<br>
<br>
⊦ p r = (rep (abs r) = r) (2)<br>
<br>
Although it would be theoretically possible to invoke the axiom of<br>
extensionality to convert between the two versions of defineTypeOp, I<br>
thought it was more elegant to reformulate theorem (1)<br>
by eta-expanding p:<br>
<br>
⊦ (\r. rep (abs r) = r) = \r. p r (3)<br>
<br>
[I also flipped the LHS and RHS so that theorem (3) has a pleasing<br>
similarity to the other theorem produced by defineTypeOp.] Now theorem<br>
(3) is logically equivalent to theorem (2) without requiring the axiom<br>
of extensionality, and retains the desirable property of having no<br>
free term variables.<br>
<br>
Anyway, there are no other "brown bag updates" to the standard, and<br>
I'd like to finalize it so we can start using it for real work.<br>
<br>
Does anybody have any objections or last-minute additions?<br>
<br>
Cheers,<br>
<br>
Joe<br>
<br>
_______________________________________________<br>
opentheory-users mailing list<br>
<a href="mailto:opentheory-users@gilith.com">opentheory-users@gilith.com</a><br>
<a href="http://www.gilith.com/opentheory/mailing-list" target="_blank">http://www.gilith.com/opentheory/mailing-list</a><br>
</blockquote></div><br></div>