Relational Operators

Description

Software Engineering (Alloy) Mind Map on Relational Operators, created by Christina on 16/05/2013.
Christina
Mind Map by Christina, updated more than 1 year ago
Christina
Created by Christina almost 11 years ago
36
0

Resource summary

Relational Operators
  1. Arrow Product (->)
    1. every combination of a tuple from two sets and concatenating them
    2. Dot Join (.)
      1. Relation you get by taking every combination of a tuple in p and q and including their join
        1. cut out the middle man!
          1. Dot Join is not associative
            1. last column of p and first column of q must agree
          2. Box Join
            1. Semantically same as dot join but takes arguments in different order
              1. e1[e2] = e2.e1
            2. Transpose
              1. Takes the mirror image of binary relation and reverse its order of atoms
                1. address = {(N0, D0), (N1, D1)}, ~address = {(D0, N0), (D1, N1)}
                  1. s.~r = r.s
                    1. r.~r = relation that associates two atoms in the domain of the relation r when they map to a common element
                  2. Transitive Closure (/ Reachability)
                    1. Relation is transitive when contains tuples a->b and b->c, it also contains a->c
                      1. ^r = r + r.r + r.r.r...
                        1. child relation: a maps each person to their child
                        2. Reflexive Transitive Closure
                          1. the smallest relation that contains r and is both reflexive and transitive
                            1. is reflexive if its contains it's own product for ever atom in itself a->a
                            2. Domain and Range Restriction
                              1. s <: r contains tuples of a relation r that start with an element in set s
                                1. domain restriction of r to s
                                2. r :> s contains the tuples of r that end with the element s
                                  1. range restriction of r to s
                                3. Override
                                  1. The override p++q of relation p by relation q is like the union, except any tuple in p that matches a tuple of q by starting with same element is dropped.
                                  Show full summary Hide full summary

                                  Similar

                                  Design Patterns
                                  Erica Solum
                                  Network Protocols
                                  Shannon Anderson-Rush
                                  System Analysis
                                  R A
                                  SCRUM
                                  R A
                                  JOOSE2 Design Patterns
                                  Isaac Jordan
                                  Patents
                                  Christina
                                  Pears of Wisdom - Software Engineering Overview
                                  Alex Poiry
                                  Sand Casting
                                  david.mcquigg
                                  2 Introduction
                                  Alex C
                                  Example Use Case: Emergency Management System
                                  Stephanie Jeandell
                                  DEPENDABLE SYSTEMS
                                  A J