Hello Martin,
> We have a category A with an operation op: % -> %. However, there
are natural
> subdomains of domains of A, which are no longer closed under op.
if I understood you correctly, you did not mean "closed under op" but
"op is a
partial function" -- which is a completely different thing.
Could you please elaborate.
Take Q\{0} and multiplicative inverse of an element.
{ 1 } is closed under inversion and inversion is a total function on
{1}.
{ 1, 2 } is not closed under inversion ( 1/2 is not in {1,2} ).
Hence inversion is a partial function on { 1, 2 }.
But 1/2 can be computed in Q\{0}.
Consider { 0, 1 }. Inversion is not defined for 0. Therefore inversion is
a partial function on { 0, 1 }.
In contrast to the situation before, you cannot say "{ 0, 1 }" is closed
under inversion. Neither the opposite. Since inversion is not defined for
0.
> Example 1, Matroids
> A "matroid" is a mathematical structure with one very, very important
> operation, namely "dualizing" ...
If a matroid is required to have a "dualizing function", then a
graphical
matroid cannot be a matroid. Simply because it does not provide the
total
function "dualize"
However, a graphical matroid can "contain" a matroid.
So the abstract setting is "graphical matroid" and the specialized one
is
"matroid". Not the other way round.
In a way you are right, of course - I followed the same reasoning
originally. However, I do feel a little uneasy saying that a graphical
matroid
is not a matroid...
A name is just a name ...
The important part is the structure of the things. That's what you want to
model.
And the structure tells you that a "graphical matroid" is not a "matroid".
The name does not affect the inner structre of an object.
There are a lot of similar situation in mathematics.
Consider for example polynomials.
In computer algebra a polynomial ring is typically commutative. If it is
not commutative (in whatever way), we say "non-commutative polynomial
ring".
However, "non-commutative polynomial ring" is the generalization and
"polynomial ring" is the specialization.
Replace "non-commutative" by "graphical" and "polynomial ring" by
"matroid" and you will see, the correspondance.
Or maybe the example Ralf gave convinces you ;)
Furthermore, there is another complication:
For a certain class of graphical matroids, namely those which are
3-connected,
we can recover the vertices. I.e.,
general Matroids have duals but no vertices
graphic non-planar three-connected Matroids do not have duals but do have
vertices
So, what to do?
I am not familiar with matroids, so let me get this straightened out.
1. Graphic non-planar matroids do not provide a way to compute a dual
element.
2. Graphic planar matroids are able to compute duals for all elements.
3. Graphic non-planar three-connected Matroids do not have duals at all.
4. Graphic three-connected Matroids allow recovering of vertices.
5. Planar graphic matroids are called "matroids".
I got number 1 wrong in my previous post. I thought, a graphical matroid
can dualize _some_ of its elements. This laid way to the "partial
function" thing.
So the base category is
GraphicalMatroid
You have several qualities for GraphicalMatroids:
-"planarness"
-"three-connected-ness"
I assume, that the properties coming from "planarness" and
"three-connected-ness" are bound to graphical matroids and not a general
mathematic construct (e.g.: the connection between a planar near-ring and
a near-ring is not connected in any way with the connection between planar
graphic matroids and graphic matroids -- At least I cannot see an obvious
connection). If this assumtion is wrong, than I'd introduce general
categories "PlanarType" and "ThreeConnectedType". However, let's assume
the assumption is valid.
GraphicalMatroidType: Category == with {
}
PlanarGraphicalMatroidType: Category == with {
GraphicalMatroidType;
dualize: % -> %;
}
ThreeConnectedGraphicalMatroidType: Category == with {
GraphicalMatroidType;
recover: ( %, % ) -> %;
}
This models 1., 2., and 4..
I would not model 5., since this is just a renaming. However, I in the
documentation of PlanarMatroidType, I would mention that "planar graphical
matroids" are called "matroids".
3. is awkward, since only planar graphical matroids have duals. So non
planar, already means that they have no duals. Three-connected is
superfluous. Therefore, 3. is redundant and already contained.
Obviously, I misunderstood the problem, as my solution seems too easy :((
--
Kind regards,
Christian
_______________________________________________
Axiom-developer mailing list
Axiom-developer@nongnu.org
http://lists.nongnu.org/mailman/listinfo/axiom-developer