next node: RelHomog,
prev node: RelCompose,
up to node: Subsystem Binary Relations


RelConv

Signature of RelConv

List of Import References :
See BOOL
See Char
See DENOTATION
See Nat
See Option
See Pair
See Rel
See Seq
See Set
See String
See Triple

SIGNATURE RelConv[dom:SORT, < : dom ** dom -> bool, 

$Date: 2010-09-30 18:24:17 +0200 (Do, 30. Sep 2010) $ ($Revision: 616 $)

                  codom:SORT, < : codom ** codom -> bool,
                  data]

Parameter

dom and codom are the domain and codomain of the relation, data is the data type of the associated elements. The functions < are assumed to be total orders.

SORT dom codom data
FUN < : dom ** dom -> bool
FUN < : codom ** codom -> bool

Imports

IMPORT Rel[dom, <, codom, <, data] ONLY rel
       Seq[triple[dom, codom, data]] ONLY seq
       Triple[dom, codom, data] ONLY triple
       String ONLY string

Converting to and from sequences

FUN asSeq: rel -> seq
FUN asRel: seq -> rel

Converting to textual representation

`(start,comma,end)(convDom, convCodom, convData)(R) begin representation with start, end it with end, seperate elements with comma. Use conv functions to convert an Element to (d :-> c)(#).

Second alternative uses a single function to compute representation of en element.

FUN ` : denotation ** denotation ** denotation ->
        (dom -> denotation) ** (codom -> denotation) ** (data -> denotation) ->
        rel -> denotation
FUN ` : denotation ** denotation ** denotation ->
         (dom ** codom ** data -> denotation) ->
         rel -> denotation

As above but use strings.

FUN ` : denotation ** denotation ** denotation ->
        (dom -> string) ** (codom -> string) ** (data -> string) ->
        rel -> string
FUN ` : denotation ** denotation ** denotation ->
         (dom ** codom ** data -> string) ->
         rel -> string

As above, but use standard text for (start, comma, end) = ("{", ",", "}").

FUN ` : (dom -> denotation) ** (codom -> denotation) ** (data -> denotation) ->
         rel -> denotation

FUN ` : (dom -> string) ** (codom -> string) ** (data -> string) ->
        rel -> string


next node: RelHomog,
prev node: RelCompose,
up to node: Subsystem Binary Relations