On 02/18/2013 11:31 PM, Tobias Nipkow wrote:
Am 18/02/2013 15:10, schrieb Lawrence Paulson:
These definitions originate in Isabelle/ZF, where it is quite essential to have a condition such 
as "r <= A <*> A", because otherwise no reflexive r could exist. They aren't is 
obviously necessary in Isabelle/HOL, but nevertheless the idea that the domain type can be 
identified with the actual domain of a relation is inflexible in many applications, where it's 
essential to have a separate carrier set, a subset of the full type.

I believe it was me who ported those definitions. I vaguley recall that I tried
various alternatives but this one seemed to work best for the theory at hand,
Zorn. I am completely open to a nicer definition but would not want to redo all
the proofs that depend on it myself.
My main problem with the current definition is that it is not (just) reflexivity, but rather reflexivity plus an additional property (that ensures that a relation is only defined on a domain). Why not split these in two separate predicates and use the second one only where really necessary?

I'm not sure how much work it would be to use this new definition of reflexivity. But if people think that what I say makes sense (or is more natural as reflexivity), I would give it a try and report afterwards.

cheers

chris


Tobias

And of course, even if they aren't ideal, I'm afraid that we are stuck with 
them; at least, I suspect that changing them now would be more trouble than it 
is worth.

Larry

On 18 Feb 2013, at 05:45, Christian Sternagel <c.sterna...@gmail.com> wrote:

Dear Larry, Stefan, Tobias, and Andrei (as authors of the relevant Isabelle/HOL 
theories),

already several times I stumbled upon the definition of Relation.refl_on (and 
thus also Order_Relation.Refl) and was irritated.

What is the reason for demanding "r <= A <*> A"? And why are other properties 
from Order_Relation, which indicate an explicit domain by their name, defined by means of 
corresponding properties with implicit domain?

E.g., in the following definitions

  definition "preorder_on A r == refl_on A r ∧ trans r"
  definition "partial_order_on A r == preorder_on A r ∧ antisym r"
  definition "linear_order_on A r ==
    partial_order_on A r ∧ total_on A r"
  definition "strict_linear_order_on A r ==
    trans r ∧ irrefl r ∧ total_on A r"
  definition "well_order_on A r == linear_order_on A r ∧ wf(r - Id)"

I would expect properties like "trans_on", "antisym_on", "irrefl_on", and "wf_on" with explicit domain (of 
course that would only make sense after dropping "r <= A <*> A" from the definition of "refl_on", since otherwise r 
will only ever relate elements of A in the above definitions).

Now I saw that Andrei writes

  "Refl_on A r" requires in particular that "r <= A <*> A",
  and therefore whenever "Refl_on A r", we have that necessarily
  "A = Field r". This means that in a theory of orders the domain
  A would be redundant -- we decided not to include it explicitly
  for most of the tehory.

in his README to the new Cardinal theories. So this (strange?) definition of 
reflexivity is here to stay and used by an ever growing body of theories.

This occasionally causes me some headache when I start to think about how my 
definitions from the AFP entry Well_Quasi_Orders would fit in as standard 
definitions in Isabelle/HOL. ( do recall that the current definition of 
Relation.refl_on would not have worked for my proofs.)

Any comments are appreciated.

cheers

chris
_______________________________________________
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev

_______________________________________________
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev

_______________________________________________
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


_______________________________________________
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev

Reply via email to