Re: Using the RM for ADTs

From: David BL <davidbl_at_iinet.net.au>
Date: Sun, 12 Jul 2009 18:59:58 -0700 (PDT)
Message-ID: <ae88326b-a48f-420d-b532-2e50e221de4b_at_y10g2000prg.googlegroups.com>


On Jul 12, 10:28 pm, "Brian Selzer" <br..._at_selzer-software.com> wrote:
> "David BL" <davi..._at_iinet.net.au> wrote in message

> > Circuit designers. In practise tremendous data compression is
> > possible. For example a 32 bit ripple carry adder can be built from
> > 32 full adders, where each full adder is made from 2 XOR, 2 AND and 1
> > OR gate, and each of these gates involves a particular configuration
> > of transistors.
>
> I'm sorry. I thought you were looking for a more general solution that
> facilitates the detection of circuits that are structurally equivalent but
> whose components or nodes just have different identifiers.

The model should support that, but in practise I don't think that's a particularly important reason why one would be interested in abstract identifies and symmetry.

I don't think it makes much sense to ever allow users to see abstract identifiers. In fact I think of abstract identifiers as only supporting comparison and a special function to allocate new values. So there isn't an operator that allows for conversion to or from a human readable string representation.

Not surprisingly in the applications where they appear necessary or useful, it seems that the user is more likely to want to view and edit the data in some graphical way (e.g. trisurfaces, CAD drawings, or circuit schematics). When "objects" are rendered on the screen in some "virtual world" they have identity in the mind of the user without having an explicit human readable name. That's a rather different view of data than the one emphasised by conventional use of the RM (i.e. sets of facts about things where each fact is *independently* verifiable by a domain expert). As you have noted yourself, sometimes things are only identified by their relation to other things.

Note with regard to a special function to allocate new abstract identifiers: This obviously cannot be regarded as a mathematical function that returns a result that is determined by the input parameters. In that sense it is not what D&D call an "operator".

I find it interesting that when thinking about automorphisms in circuits, we can see some correlation between:

  1. stronger integrity constraints
  2. larger equivalence classes
  3. less degrees of freedom

For example modelling the symmetry of resistors seems like a good idea. In terms of a GUI it means that the diagram doesn't need to distinguish the two leads of a resistor. There are also less degrees of freedom at the time of data entry of circuit values. Received on Mon Jul 13 2009 - 03:59:58 CEST

Original text of this message