Glossary: 1. Sets
Glossary: 1. Sets
1. Sets
1.1 Terms
Set A collection of items of the same type with no order and no duplicates.
Venn Diagram
A picture representing a set.
1.2 Symbols
Set membership. c {a, b, c} is true, d {a, b, c} is false.
Not set membership. c {a, b, c} is false, d {a, b, c} is
true.
{ , } Set enumeration : the members of the set are listed separated by commas.
For example {2, 4, 6, 8} is the set of even numbers between 0 and
10.
{ declaration | predicate }
Set comprehension. declaration is an expression defining a set of
values, predicate is an expression involving those values. For
example
{ x N | x is even }
defines the set of even numbers.
= Equality. x = x is true.
? Inequality. x ? x is false.
< Less than.
> Greater than.
? Less than or equal to.
? Greater than or equal to.
Proper subset. {a, b} { a, b, c} is true, {a, b} { a,
b} is false.
Improper subset. {a, b} { a, b, c} is true, {a, b} { a,
b} is true.
Not proper subset. {a, b} { a, b, c} is false, {a, b}
{ a, b} is true.
⊈ Not an improper subset. {a, b} ⊈ { a, b, c} is false, {a, b} ⊈
{ a, b} is false.
{} The empty set.
The empty set.
2. Set Operations
2.1 Terms
Input / Output concept
A program is a function which is applied to the input to produce the
output.
2.2 Symbols
Set union. {a, b} {b, c, d} = {a, b, c, d}.
Set intersection. {a, b} {b, c, d} = {b}.
\ Set difference. {b, c, d} \ {a, b} = {c, d}.
# Set cardinality. #{a, b, c} = 3.
2
P Power set. P{a, b} = {{}, {a}, {b}, {a, b}}.
( , ) An ordered pair. The members of the pair are listed separated by a
comma. For example (x, y).
x Cartesian product. {a, b} x {c, d} = {(a,c), (a, d), (b,
c), (b, d)}.
3. Introduction To Logic
3.1 Terms
Propositions
Statements which may be either true or false.
Contradiction
A proposition which is never true.
Tautology
A proposition which is always true.
Propositional Forms
Formulas.
Logical connectives
And, or, not.
Free variable
A variable that does not (yet) have a value.
Bound variable
A variable that does have a value.
{ declaration | predicate generator }
3
Set replacement which is an extension of set comprehension.
declaration is an expression defining a set of values, predicate
and generator are expressions involving those values. For example
{ x N | x is even x + 1 }
is a strange way of defining the set of odd numbers. The is usually
pronounced "blob".
3.2 Symbols
Bottom. Undefined value or crash.
Logical or.
Logical and.
Logical not.
Logical implication (p implies q).
Logical equivalence (p if and only if q). iff and are also used.
N The set of all natural numbers.
Z The set of all integer numbers.
R The set of all real numbers.
| | Integer modulus or absolute value. |9| = |9| = 9.
4. Venn Diagrams And Quantifiers
4.1 Terms
Universal Set
4
The set of everything we are interested in.
4.2 Symbols
Sum quantifier. x = 13 x = 1 + 2 + 3 = 6.
Universal quantifier (for all). The predicate must be true for all values of
the variable(s).
Existential quantifier (there exists). The predicate need only be true for
one value of the variable(s).
5. Relations
5.1 Terms
Binary Relation
A set of ordered pairs.
Source Set
The set of the first elements in the pairs of a binary relation.
Target Set
The set of the second elements in the pairs of a binary relation.
Directed Graph
A diagram of a relation. Also called graphs or digraphs.
Homogeneous Relation
The source and target sets are identical.
Reflexive Relation
Every element of the source set is related to itself. I R.
5
Symmetric Relation
The relation is equal to its inverse. R~ = R.
Transitive Relation
The composition of the relation with itself is a subset of the relation. R ;
R R.
5.2 Symbols
~
Relational inverse. If R = {(a, b), (c, d)} then R~ = {(b,
a), (d, c)}.
; Relational composition. {(a, 1), {(b, 2)} ; {(2, P), (5,
M)} = {(b, P)}.
Relational override. {(a, 1), (b,2)} {(a, 3), (c, 4)}
= {(a, 3), (c, 4), (b, 2)}.
R X Y means that R is a relation between the sets X and Y.
7. Functions
7.1 Terms
Function
A binary relation in which for a given input there is only one possible
output.
Domain Set
The source set of a function. The possible inputs.
Range Set
6
The target set of a function. The possible outputs. Sometimes called the
codomain.
Total Function
The domain set is equal to the source set. The function defines an output
for all possible inputs.
Partial Function
The domain set is a subset of the source set. The function does not define
an output for one or more of its possible inputs.
Surjective Function
Also called a surjection. A function whose range is the whole of the target
set.
Injective Function
Also called an injection. A function whose range elements are mapped to
by only one element of the domain. If f is injective then f1 is also a
function.
Bijective Function
A function which is total, surjective and injective.
Cartesian Plot
A picture of a function. A traditional graph with the domain as the x axis
and the range as the y axis.
Arrow Diagram
A picture of a function. Each domain value is connected by an arrow to
the corresponding range value.
Maplet Notation
Another way of writing ordered pairs (see below).
7.2 Symbols
7
dom Computes the domain set of a function.
ran Computes the range set of a function.
o
Function composition. g f(x) = g(f(x).
o
1
Function inverse. x : (f1 o f)(x) = x.
Function override. {(a, 1), {(b, 2)} {(a, 3), (c,
4)} = {(a, 3), (c, 4), (b, 2)}. Relational override applied
to a relation which is also a function.
T f X T Y means that f is a total function between the sets X and Y.
↦ x ↦ y means an ordered pair the same as (x, y). This is called maplet
notation.
P f X P Y means that f is a partial function between the sets X and
Y.
S f X S Y means that f is a surjective function between the sets X
and Y.
I f X I Y means that f is a injective function between the sets X
and Y.
B f X B Y means that f is a bijective function between the sets X
and Y.
8. Mathematical Models
8.1 Terms
Model
An abstract (mathematical) representation of a system. Abstract because it
only contains the properties of the system that we are interested in.
Bag
A collection of items of the same type with no order but which may have
duplicates. Also called a multiset.
8
Sequence
A collection of items of the same type with order and which may have
duplicates.
8.2 Symbols
[[ , ]] Bag enumeration : the members of the bag are listed separated by
commas. For example [[2, 4, 6, 2, 8]] is the bag of even
numbers between 0 and 10.
< , > Sequence enumeration : the members of the sequence are listed separated
by commas. For example <2, 4, 6, 2, 8> is a sequence of even
numbers between 0 and 10.
⌢
Sequence concatenation. <2, 4, 6> ⌢ <2, 7, 8> = <2, 4, 6,
2, 7, 8>.
9. Finite State Machines
9.1 Terms
State
A place in an FSM. Represented as a circle with (usually) an identifier in
it. Also called places.
Arc
A transition between two states. Represented in an STD by an arrow
(usually) with an identifier attached to it. Also called edges.
State Transition Diagram
A picture of an FSM.
9
Word
A finite sequence of symbols taken from the alphabet of an FSM. Also
called a string.
Language
Any set of strings that can be formed using the symbols of some FSM's
alphabet.
Start State
An initial state of an FSM. Represented in an STD by an arrow coming
from nowhere.
Acceptance State
A valid final state of an FSM. Represented in an STD by a halo around
the state. Also called a final state.
Exhausted
An input string is exhausted if the FSM has consumed all of it.
Accepted
An input string is accepted if it is exhausted and the FSM is in an
acceptance state.
Halted
An FSM is halted if there are one or more input values unconsumed but
the FSM cannot process the first remaining input.
9.2 Symbols
The alphabet of a FSM. The inputs that the FSM can process.
10
10. Finite State Machines (Continued)
10.1 Terms
10.2 Symbols
(, S, Tr, S0, F)
A quintuple representing an FSM as follows :
is an input alphabet.
S is a finite set of states.
Tr is the transition relation which assigns to each state and input pair a
new state.
S0 S is a set of possible start (initial) states.
F S is a set of possible start acceptance states.
(I, O, S, Tr, Or, S0, F)
A septuplet representing an FSM with output as follows :
I is an input alphabet.
O is an input alphabet.
S is a finite set of states.
Tr is the state transition relation which assigns to each state and input
pair a new state.
Or is the output transition relation which assigns to each state and input
pair an output value.
S0 S is a set of possible start (initial) states.
F S is a set of possible start acceptance states.
11. Specification And Modelling Of Software
11.1 Terms
Precondition
11
What must be true before an operation can be performed.
Postcondition
What will be true after an operation is performed provided that the
precondition was met.
12. Program Specification
12.1 Terms
Robust
A specification (or program) is robust if it can handle all possible input
data.
12