UML Class Model Abstract Syntax and Set-Based Semantics

Size: px
Start display at page:

Download "UML Class Model Abstract Syntax and Set-Based Semantics"

Transcription

1 UML Class Model Abstract Syntax and Set-Based Semantics Mira Balaban and Azzam Maraee Computer Science Department Ben-Gurion University of the Negev, ISRAEL March 31, 2017 The class-model language, which is visualized by class diagrams, is the backbone of UML. It consists of classes, associations, class descriptors attributes, operations and constraints that are imposed on them. The meaning of a class model is given by its instances. A class-model instance has a semantic domain, and a denotation mapping, that maps syntactic elements of the class-model to elements in or over the semantic domain. Classes are mapped to sets of objects in the domain, and associations are mapped to relationships between these sets. The denotation of classes and associations are called extensions. Attributes are mapped to mappings defined on class extensions. Constraints denote restrictions over the extensions of the class-model elements. An instance of a class-model, is legal if it satisfies all the constraints; it is empty if all class extensions are empty, and is infinite if some class-extension is not finite. The formal syntax-semantics definition enables precise definitions of syntactic and semantic relationships between class models and their instances. These are defined at the end of this document. The formal definition is essential for investigation of class models, including verification, validation, optimization, instance completion, and repairing. The definition below follows the UML 2.5 specification in [2]. It does not include class operations. Many thanks to Igal Khitron for providing multiple helpful comments 1

2 1 Abstract Syntax A class model is a tuple C, P, A, M, Att, Dt, Mappings, Constraints. 1.1 Element symbols C is a set of class symbols. P is a set of property symbols (also called association ends). Property symbols denote multi-mappings derived from their associations. A is a set of association symbols. M is a set of multiplicity symbols. Att: A set of attribute symbols. Dt: A set of data-type symbols. M appings describe syntactic interrelationships between the symbols, and Constraints specify semantic requirements that can be imposed on the symbols. The semantics of some constraints implies syntactic restrictions that must hold, in order for the constraints to be satisfied. 1.2 Mappings Multiplicity mappings: val : M N {0} N { } is a function that assigns multiplicity values 1. It satisfies: For m M, if val(m) 2, then val(m) 1 val(m) 2, where val(m) 1, val(m) 2 refer to the first and second elements in val(m). val(m) 1 and val(m) 2 are the boundary cardinalities of m, and are denoted min(m) and max(m), respectively. An integer i such that min(m) < i < max(m), is an internal cardinality of m. Data type mappings: Each data-type symbol T is associated with a known domain of values, denoted domain(t ). cardinality(t ) is defined as the cardinality of domain(t ). Qualifier attributes and their mappings: 1 In previous UML2 versions, a multiplicity can be a set of intervals, which means that the val function is a multi-valued function. However, this complex definition has been dropped in the UML 2.x versions. 2

3 1. Qatt Att is the subset of attributes in Att that function as qualifier attributes of properties. 2. q dt : Qatt Dt is a mapping of qualifier attributes to data types. 3. q att : P Qatt is a multi-valued function that assigns a (possibly empty) set of qualifier attributes to a property. The assigned property is called a qualified property and its association is a qualified association. In Figure 1b, q att (p 2 ) = {q 1, q 2 }, q dt (q 1 ) = D 1, q dt (q 2 ) = D 2. (a) A binary association (b) A qualified association Figure 1: Visualization of binary and qualified associations Attribute (non-qualifier) mappings: 1. att: C (Att Qatt) is a multi-valued function that assigns a (possibly empty) set of non-qualifier attribute symbols to every class. 2. Each attribute in a class can be associated with a data-type and a multiplicity symbols. For every class C C, there is a mapping dt C : att(c) Dt and a mapping mul C : att(c) M. Notation: For a class C, and attribute a att(c), min C (a) = min(mul C (a)) and max C (a) = max(mul C (a)). Property mappings: 1. inverse : P P is a bijective mapping, that assigns to every property p its unique inverse, denoted p 1. It satisfies: inverse(p) p, and (p 1 ) 1 = p. 2. source: P C and target: P C are mappings of properties to classes such that for a property p P, target(p) = source(p 1 ). In Figure 1a, p 1 is p 1 2, target(p 2 ) = source(p 1 ) = B, and source(p 2 ) = target(p 1 ) = A. 3

4 3. Property multiplicity: mul : P Qatt... Qatt M is a function that assigns multiplicities to property symbols and their qualifier attributes. It is defined only for p, q 1,..., q n such that q att (p) = {q 1,..., q n }. We take the liberty to write shortly mul(p, q att (p)). Notation: min(p, q att (p)) = min(mul(p, q att (p))) is the minimum multiplicity of p and its qualifier attributes, and max(p, q att (p)) = max(mul(p, q att (p))) is its maximum multiplicity. Syntactic restriction: The minimum multiplicity of a property with a qualifier attribute that has an infinite data type is 0: If for some q q att (p), cardinality(q dt (q)) =, then min(p, q att (p)) = 0. For non-qualified properties (q att (p) = ): mul : P M, and min(p) = min(mul(p)), max(p) = max(mul(p)). Association mappings: props: A P P is an injection that satisfies props(a) = p, p 1 (arbitrary ordering), and every property appears in exactly one props(a). Notation: assoc(p 1 ) or assoc(p 1, p 2 ) (where p 2 = p 1 1 ) denote the association of p 1 or of p 1, p 2, and props 1 (a), props 2 (a) (arbitrary ordering) denote the two properties of a. Note that for a property p, assoc(p) is unique. In Figure 1a, props(r) = p 1, p 2 and assoc(p 1 ) = assoc(p 2 ) = assoc(p 1, p 2 ) = r. For simplicity we use a compact symbolic notation that captures all symbols related to an association. For example, the association r in figure 1a is denoted r(p 1 : A[m 1, n 1 ], p 2 : B[m 2, n 2 ]). The symbolic representation of the qualified association in figure 1b is: r(p 1 : A[m 1, n 1 ], p 2 : B{q 1 : D 1, q 2 : D 2 }[m 2, n 2 ]), and min(p 2, {q 1, q 2 }) = m 2, and max(p 2, {q 1, q 2 }) = n 2. Note that the visualization of the qualifier is on the opposite side (source side) of the qualified property. Association classes: 1. AC C is the subset of classes in C that function as association classes. 2. assoc ac : AC A is an injective function that maps association class symbols to association symbols. For example, in Figure 2, assoc ac (C) = r. 4

5 Figure 2: Visualization of an association class 1.3 Constraints Aggregation and Composition: aggregation and composition are predicates on P that characterize aggregation and composition properties. composition is a refinement of aggregation, i.e., for p P, composition(p) aggregation(p). Aggregation/composition properties are marked as p a and p c respectively. Visually, aggregation/composition properties are marked by diamonds, with an empty diamond for aggregation and a solid diamond for composition. For example, in Figure 3, p 5 is a composition property. Syntactic restriction: A composition property p is not multi-valued, i.e., max(p) = 1, or max(p, q att (p)) = 1 in case of qualified property. Figure 3: A class diagram with quantifier, association-class, class-hierarchy and composition constraints Class hierarchy: Class hierarchy is a non-circular binary relationship on class symbols (which are not association classes): (C AC) (C AC). Henceforth C 2 C 1, stands for C 2 is a subclass of C 1. + is the transitive closure of, and C 2 C 1 stands for C 2 = C 1 or C 2 + C 1. For example, in Figure 4a, class C1 is a subclass of C, i.e., C1 C. Generalization-set (GS): This is an (n + 1)-ary n 2 relationship on C AC. A GS constraint is denoted GS(C, C 1,..., C n ; Const). C is called the superclass and the C i -s are called the subclasses. GS constraints may be associated with disjoint/overlapping and complete/in- 5

6 complete constraints. Figure 4b shows the GS constraint GS(C, C 1, C 2 ; disjoint, complete) Syntactic restrictions: For i, j = 1..n (1) C C i ; (2) C i C j. (a) (b) Figure 4: Class diagram visualization of class-hierarchy and GS constraints Subsetting: Subsetting is a non-circular binary relation on the set of property symbols: P P. p 1 p 2, is read p 1 subsets p 2, where p 1 is the subsetting property, and p 2 is the subsetted property 2. Figure 5 includes two subsetting constraints: The presentation property subsets the paper property, and the presenter property subsets the author property. The constraints state that a paper presented by an author must be a paper of the author, and the presenter of an accepted paper is also the author of that paper. As for class hierarchies, + is the transitive closure of, and p 1 p 2 stands for p 1 = p 2 or p 1 + p 2. Syntactic restrictions: (1) source(p 1 ) source(p 2 ); (2) target(p 1 ) target(p 2 ); (3) max(p 1 ) max(p 2 ). Figure 5: A class diagram with subsetting constraints Redefinition: Redefinition is also a non-circular binary relation on the set of property symbols: P P. p 1 p 2, is read p 1 redefines p 2. p 1 is termed the redefining property and p 2 is termed the redefined property. Figure 6 shows type- and multiplicity-redefinition constraints. In Figure 6a, property tacourse redefines the multiplicity constraint of property course. It restricts a teaching assistant to teach exactly one 2 We use the same symbol as for class hierarchy. Distinction is made by context. 6

7 course, although Academic employees can teach up to three courses. In Figure 6b, property gregister redefines the type and multiplicity of property register. It restricts a graduate student to register to exactly four graduate courses instead of to any number of general courses. Similarly to subsetting, is the transitive closure of, and p 1 p 2 stands for p 1 = p 2 or p 1 p 2. Syntactic restrictions: Restriction (3) of subsetting is strengthened to require that the multiplicity interval of p 1 is included in that of p 2, i.e., min(p 1 ) min(p 2 ), max(p 1 ) max(p 2 ). Student -register 1..* Course GraduateStudent -gregister GraduateCourse 4 {redefines register} (a) (b) Figure 6: Class diagrams with redefinition constraints Union: This constraint associates a property with a group of properties. So, similarly to generalization-set, union is an (n + 1)-ary n 2 relationship on P. In a union relationship p = union(p 1,..., p n ), p is called the superproperty and the p i -s are called the subproperties. In Figure 7, the declaration of property course as a union implies that a student can register only to required or elective courses. Dropping the union constraint enables students to register to courses which are neither required nor elective. Syntactic restrictions: For i, j = 1..n (1) p p i ; (2) p i p j ; (3) For i = 1..n, source(p i ) source(p); target(p i ) target(p); max(p i ) max(p). * Student * registering {subsets course} -rc 1..* -course {union} 1..* RequiredCourse Course {subsets course} ElectiveCourse -ec * Figure 7: A class diagram with a union constraint Association hierarchy: Association hierarchy is similar to class hierarchy, and denoted using the same symbol:. However, it is more 7

8 complex, since it requires also pairwise specification of property correspondence. Therefore, association hierarchy is a non-circular binary association on triplets of associations, and their properties: (A P P) (A P P). For example, Figure 8 shows an association specialization between the special authorization and the authorization associations. It enforces an external user with a special authorization access to some wireless network, to have a regular user authorization to the same network. Syntactic restrictions: For an association hierarchy a 1, p 1, q 1 a 2, p 2, q 2 : (1) For i = 1, 2, a i = assoc(p i ) = assoc(q i ); (2) source(p 1 ) source(p 2 ); target(p 1 ) target(p 2 ); max(p 1 ) max(p 2 ); (3) source(q 1 ) source(q 2 ); target(q 1 ) target(q 2 ); max(q 1 ) max(q 2 ). User Authorization Wireless InnerUser ExternalUser SpechialAuthorization Figure 8: A class diagram with association specialization constraint Association-class hierarchy: Association-class hierarchy is similar to association hierarchy: It is like class hierarchy, but requires also specification of property correspondence the properties of the associations of the association classes. Therefore, it is also a non-circular binary association on triplets of classes, and the properties of their associated associations: (AC P P) (AC P P). Figure 9 shows a class diagram with an association-class constraint. Syntactic restrictions: For an association-class hierarchy C 1, p 1, q 1 C 2, p 2, q 2 : (1) For i = 1, 2, assoc ac (C i ) = assoc(p i ) = assoc(q i ); (2) source(p 1 ) source(p 2 ); target(p 1 ) target(p 2 ); max(p 1 ) max(p 2 ); (3) source(q 1 ) source(q 2 ); target(q 1 ) target(q 2 ); max(q 1 ) max(q 2 ). xor: A xor constraint restricts properties with a common source class, and denoted xor(p, q). In Figure 10, properties b and c are restricted by a xor constraint. Syntactic restrictions: For a xor constraint xor(p, q), source(p) = source(q). The common source class is termed the base class of the xor constraint, and denoted base(xor(p, q)). 8

9 Figure 9: A class diagram with an association-class hierarchy constraint 2 Semantics Figure 10: A class diagram with a xor constraint The standard set theoretic semantics of class models associates a class model with instances I, that have a semantic domain and an extension mapping, that associates syntactic symbols with elements over the semantic domain. Classes are mapped to sets of objects in the domain, and associations are mapped to relationships between these sets. The denotation of classes and associations are called extensions. Properties and attributes are mapped to multi-valued functions on class extensions. For a symbol x, x I is its denotation in I. 2.1 Symbol denotation: 1. Classes: For C C, C I, the extension of C in I, is a set of elements in the semantic domain. The elements of class extensions are called objects. 2. Attributes (non-qualified): The denotation of an attribute is a higher-order function that maps a class symbol to a function from the class extension to the domain of the data-type of the attribute. That is, for class C C and attribute a att(c), a I (C): C I domain(dt C (a)) is a multi-valued function that satisfies: For every object o C I, 9

10 min C (a) a I (C)(o) max C (a). 3. Properties: For p P, p I is a multi-valued function from its source class to its target class: p I : source(p) I target(p) I. Restriction: Inverse properties denote inverse functions: (p 1 ) I = (p I ) Associations: For a A, a I is a binary relationship on the extensions of the classes of a. If props(a) = p 1, p 2, then since p 1 = (p 2 ) 1, their denotations are inverse functions of each other: p I 1 = (p I 2) 1, and vice versa. The association denotes all object pairs that are related by its properties: a I = {(e, e ) e target(p 1 ) I, e target(p 2 ) I, p I 2(e) = e }. Elements of association extensions are links. 2.2 Constraints: 1. Multiplicity constraints on properties: (a) Non-qualified properties For every e source(p) I, min(p) p I (e) max(p). The upper bound is ignored if max(p) =. (b) Qualified properties: A qualified property denotes a mapping that refines the denotation mapping of the property. If q att (p) = {q 1,..., q n } and q dt (q i ) = T i, i = 1..n, and domain(t i ) = D i, then the mappings of p I are partitioned by a semantic function q p : source(p) I D 1... D n target(p) I, that satisfies: i. For every e source(p) I and d i D i, i = 1..n: q p (e, d 1,..., d n ) p I (e). ii. For every e source(p) I and d i, d i D i, i = 1..n: q p (e, d 1,..., d n ) q p (e, d 1,..., d n) =. iii. For every e source(p) I and d i D i, i = 1..n: min(p, q 1,..., q n ) q p (e, d 1,..., d n ) max(p, q 1,..., q n ). The upper bound is ignored if max(p) =. Recall that if the domain of some q i is infinite, i.e., cardinality(t i ) =, then min(p, q 1,..., q n ) = 0. In Figure 3, p I 8 is partitioned by the function q p8 : A I T E I, and q p8 (a 1, t 1 ) = e 2, q p8 (a 1, t 2 ) = e Association class: For an association-class C, C I is a set of elements in I and pairs C : C I (assoc ac (C)) I is a 1:1 and onto semantic mapping, that maps every object in C I to a single link in the relation (assoc ac (C)) I. In Figure 11, pairs D (d 1 ) = (c 1, c 2 ). 10

11 Figure 11: An instance diagram for the class diagram in Figure 3 3. Aggregation constraints: Aggregation denotes part-whole relationships. Therefore, cycles of aggregated objects are not allowed: For aggregation properties p a 1,..., p a n, such that target(p a i ) = source(p a i+1), i = 1, n 1, if e source(p a 1) I, then e / p a n I (p n 1 ai (... (p a 1 I (e)))). 4. Composition constraints: The syntactic definition restricts a composition to be also marked as an aggregation. Therefore, cycles of composite objects are not allowed. In addition, a composition is an aggregation in which an object cannot be part of two different wholes. Recall that a composition property is not multi-valued. The additional semantic multi-composition constraint states that if two composition properties have a common domain, then they map an object to a single whole object, either directly or not. That is: For composite properties p c, q c such that source(p c ) = source(q c ), e source(p c ) I implies that either p c (e) = q c (e) or there are intermediate properties p = p c 1,..., p c n, such that target(p c i) = source(p c i+1), i = 1, n 1, and p c n I (p ci n 1 (... (p c 1 I (e)))) = q c (e). 5. Class-hierarchy constraints: A constraint C 1 C 2 denotes a subset relations between the class extension: C 1 I C 2 I. 6. Generalization-set constraints: A GS constraint GS(C, C 1,..., C n ; Const) imposes class hierarchy constraints among the subclasses and the superclass, and set constraints among the subclasses. That is: (a) Class hierarchy: For i = 1..n, C i C; (b) Set constraints: (1) Const =disjoint: Ci I Cj I =, i, j = 1..n; (2) Const = overlapping: For some i, j = 1..n, it might be Ci I Cj I ; (3) Const = complete: C I = n Ci I ; (4) Const = i=1 n incomplete: Ci I C I. i=1 11

12 7. Subsetting constraint: For p 1, p 2 P, p 1 p 2 states that p 1 is a submapping of p 2, i.e., for e source(p 1 ) I, p I 1 (e) p I 2 (e). The semantics of subsetting requires the syntactic restrictions that for p 1 p 2, the source and target classes of p 1 are descendant subclasses of the source and target classes of p 2, respectively, and the maximum cardinality of p 1 can only restric that of p 2. Moreover, in [1] we show that the subsetting constraint is symmetric with respect to the inverse properties. That is, if p 1 p 2 then also p 1 1 p Redefinition constraint: Redefinition strengthens subsetting with a requirement that the redefining property overrides the redefined property [1]. That is, for p 1, p 2 P, p 1 p 2 states that for objects in the source class of the redefining property p 1, the redefined property p 2 is equal to p 1. Formally, for e source(p 1 ) I, p I 2 (e) = p I 1 (e). This definition implies the following constraints: (a) Type redefinition: For object e source(p 1 ) I, p 2 I (e) target(p 1 ) I. (b) Multiplicity redefinition: For object e source(p 1 ) I, min(p 1 ) p 2 I (e) max(p 1 ), which implies the syntactic restriction that the multiplicity interval of p 1 is included in that of p Union constraint: Property union means that the union property combines all the union component properties. That is, for p, p 1,..., p n P, p = union(p 1,..., p n ), means that for every object e source(p) I, p I (e) = i=1..n (pi i (e)). 10. Association hierarchy: Association hierarchy means link inclusion, following the property ordering as specified in the constraint. That is, for a 1, a 2 A, a 1, p 1, q 1 a 2, p 2, q 2 requires that for every object e source(p 1 ), p 1 (e) p 2 (e), and for every object d source(q 1 ), q 1 (d) q 2 (d). In [1] it is shown that association hierarchy is equivalent to subsetting. 11. Association-class hierarchy: Association-class hierarchy is a regular class hierarchy, but also implies hierarchy of the associated associations. That is, for C 1, C 2 C, C 1, p 1, q 1 C 2, p 2, q 2 means C 1 C 2, and if for i = 1, 2, assoc ac (C i ) = a i, then a 1, p 1, q 1 a 2, p 2, q xor: A xor constraint restricts the extensions of the xored properties, so that they are not defined on common objects. That is, for xor(p, q), an instance I, and an object e base(xor(p, q)) I, if p I (e) then q I (e) =, or vice-versa. 12

13 Semantics-based relations: An instance I of a class model CM is legal, denoted I = CM, if it satisfies all the constraints of CM. A constraint c is entailed by a class-model CM, denoted CM = c if it holds in every legal instance of CM. A class model CM 1 is entailed from class model CM 2, denoted CM 1 = CM 2, if every legal instance of CM 1 is a legal instance of CM 2. Class models are equivalent, denoted CM 1 CM 2, if they have the same set of legal instances. A legal instance I 1 is included in a legal instance I 2 (I 1 is a sub-instance of I 2 ), if extensions of classes and associations in I 1 are included in their corresponding extensions in I 2. References [1] A. Maraee and M. Balaban. Inter-association Constraints in UML2: Comparative Analysis, Usage Recommendations, and Modeling Guidelines. In MoDELS 2012, [2] Object Management Group (OMG). OMG Unified Modeling Language. Specification Version 2.5,

Efficient Recognition of Finite Satisfiability in UML Class Diagrams: Strengthening by Propagation of Disjoint Constraints

Efficient Recognition of Finite Satisfiability in UML Class Diagrams: Strengthening by Propagation of Disjoint Constraints Efficient Recognition of Finite Satisfiability in UML Class Diagrams: Strengthening by Propagation of Disjoint Constraints Azzam Maraee Ben-Gurion University of the Negev Beer-Sheva 84105, ISRAEL mari@cs.bgu.ac.il

More information

CSC Discrete Math I, Spring Sets

CSC Discrete Math I, Spring Sets CSC 125 - Discrete Math I, Spring 2017 Sets Sets A set is well-defined, unordered collection of objects The objects in a set are called the elements, or members, of the set A set is said to contain its

More information

9.5 Equivalence Relations

9.5 Equivalence Relations 9.5 Equivalence Relations You know from your early study of fractions that each fraction has many equivalent forms. For example, 2, 2 4, 3 6, 2, 3 6, 5 30,... are all different ways to represent the same

More information

Correctness Algorithms

Correctness Algorithms Ben-Gurion University of the Negev Faculty of Natural Sciences Department of Computer Science Metric-Driven Approach to Benchmarking Model Correctness Algorithms by Victor Makarenkov Supervised by: Prof.

More information

CSE 20 DISCRETE MATH. Fall

CSE 20 DISCRETE MATH. Fall CSE 20 DISCRETE MATH Fall 2017 http://cseweb.ucsd.edu/classes/fa17/cse20-ab/ Final exam The final exam is Saturday December 16 11:30am-2:30pm. Lecture A will take the exam in Lecture B will take the exam

More information

Enhanced Entity-Relationship (EER) Modeling

Enhanced Entity-Relationship (EER) Modeling CHAPTER 4 Enhanced Entity-Relationship (EER) Modeling Copyright 2017 Ramez Elmasri and Shamkant B. Navathe Slide 1-2 Chapter Outline EER stands for Enhanced ER or Extended ER EER Model Concepts Includes

More information

Appendix 1. Description Logic Terminology

Appendix 1. Description Logic Terminology Appendix 1 Description Logic Terminology Franz Baader Abstract The purpose of this appendix is to introduce (in a compact manner) the syntax and semantics of the most prominent DLs occurring in this handbook.

More information

Appendix 1. Description Logic Terminology

Appendix 1. Description Logic Terminology Appendix 1 Description Logic Terminology Franz Baader Abstract The purpose of this appendix is to introduce (in a compact manner) the syntax and semantics of the most prominent DLs occurring in this handbook.

More information

Chapter 8: Enhanced ER Model

Chapter 8: Enhanced ER Model Chapter 8: Enhanced ER Model Subclasses, Superclasses, and Inheritance Specialization and Generalization Constraints and Characteristics of Specialization and Generalization Hierarchies Modeling of UNION

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe CHAPTER 4 Enhanced Entity-Relationship (EER) Modeling Slide 1-2 Chapter Outline EER stands for Enhanced ER or Extended ER EER Model Concepts Includes all modeling concepts of basic ER Additional concepts:

More information

Introduction to Sets and Logic (MATH 1190)

Introduction to Sets and Logic (MATH 1190) Introduction to Sets and Logic () Instructor: Email: shenlili@yorku.ca Department of Mathematics and Statistics York University Dec 4, 2014 Outline 1 2 3 4 Definition A relation R from a set A to a set

More information

CSE 20 DISCRETE MATH. Winter

CSE 20 DISCRETE MATH. Winter CSE 20 DISCRETE MATH Winter 2017 http://cseweb.ucsd.edu/classes/wi17/cse20-ab/ Final exam The final exam is Saturday March 18 8am-11am. Lecture A will take the exam in GH 242 Lecture B will take the exam

More information

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions. THREE LECTURES ON BASIC TOPOLOGY PHILIP FOTH 1. Basic notions. Let X be a set. To make a topological space out of X, one must specify a collection T of subsets of X, which are said to be open subsets of

More information

SLIDES: Introductory Modeling Example Employing UML and OCL [UML: Unified Modeling Language, OCL:Object Constarint Language]

SLIDES: Introductory Modeling Example Employing UML and OCL [UML: Unified Modeling Language, OCL:Object Constarint Language] Lecture day 2016-04-07 SLIDES: Introductory Modeling Example Employing UML and OCL [UML: Unified Modeling Language, OCL:Object Constarint Language] - System design in an object-oriented way employing USE

More information

Introduction to Software Testing Chapter 4 Input Space Partition Testing

Introduction to Software Testing Chapter 4 Input Space Partition Testing Introduction to Software Testing Chapter 4 Input Space Partition Testing Paul Ammann & Jeff Offutt http://www.cs.gmu.edu/~offutt/ softwaretest/ Ch. 4 : Input Space Coverage Four Structures for Modeling

More information

A set with only one member is called a SINGLETON. A set with no members is called the EMPTY SET or 2 N

A set with only one member is called a SINGLETON. A set with no members is called the EMPTY SET or 2 N Mathematical Preliminaries Read pages 529-540 1. Set Theory 1.1 What is a set? A set is a collection of entities of any kind. It can be finite or infinite. A = {a, b, c} N = {1, 2, 3, } An entity is an

More information

Chapter 6: Entity-Relationship Model. The Next Step: Designing DB Schema. Identifying Entities and their Attributes. The E-R Model.

Chapter 6: Entity-Relationship Model. The Next Step: Designing DB Schema. Identifying Entities and their Attributes. The E-R Model. Chapter 6: Entity-Relationship Model The Next Step: Designing DB Schema Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common

More information

The Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes.

The Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes. Chapter 6: Entity-Relationship Model Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common data organization model The Relational

More information

SMO System Management Ontology

SMO System Management Ontology SMO System Management Ontology Description Logic Formalization of CIM Andrea Calì, Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, Daniele Nardi Research Report N. 1 March 8, 2001 Abstract Common

More information

Integrating SysML and OWL

Integrating SysML and OWL Integrating SysML and OWL Henson Graves Lockheed Martin Aeronautics Company Fort Worth Texas, USA henson.graves@lmco.com Abstract. To use OWL2 for modeling a system design one must be able to construct

More information

Chapter 2: Entity-Relationship Model

Chapter 2: Entity-Relationship Model Chapter 2: Entity-Relationship Model! Entity Sets! Relationship Sets! Design Issues! Mapping Constraints! Keys! E-R Diagram! Extended E-R Features! Design of an E-R Database Schema! Reduction of an E-R

More information

Chapter 7: Entity-Relationship Model

Chapter 7: Entity-Relationship Model Chapter 7: Entity-Relationship Model, 7th Ed. See www.db-book.com for conditions on re-use Chapter 7: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram Design Issues Weak Entity

More information

10/11/2018. Partial Orderings. Partial Orderings. Partial Orderings. Partial Orderings. Partial Orderings. Partial Orderings

10/11/2018. Partial Orderings. Partial Orderings. Partial Orderings. Partial Orderings. Partial Orderings. Partial Orderings Sometimes, relations define an order on the elements in a set. Definition: A relation R on a set S is called a partial ordering or partial order if it is reflexive, antisymmetric, and transitive. A set

More information

Logic and Discrete Mathematics. Section 2.5 Equivalence relations and partitions

Logic and Discrete Mathematics. Section 2.5 Equivalence relations and partitions Logic and Discrete Mathematics Section 2.5 Equivalence relations and partitions Slides version: January 2015 Equivalence relations Let X be a set and R X X a binary relation on X. We call R an equivalence

More information

Power Set of a set and Relations

Power Set of a set and Relations Power Set of a set and Relations 1 Power Set (1) Definition: The power set of a set S, denoted P(S), is the set of all subsets of S. Examples Let A={a,b,c}, P(A)={,{a},{b},{c},{a,b},{b,c},{a,c},{a,b,c}}

More information

TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3.

TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3. TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3. 301. Definition. Let m be a positive integer, and let X be a set. An m-tuple of elements of X is a function x : {1,..., m} X. We sometimes use x i instead

More information

Sets. De Morgan s laws. Mappings. Definition. Definition

Sets. De Morgan s laws. Mappings. Definition. Definition Sets Let X and Y be two sets. Then the set A set is a collection of elements. Two sets are equal if they contain exactly the same elements. A is a subset of B (A B) if all the elements of A also belong

More information

EDAA40 At home exercises 1

EDAA40 At home exercises 1 EDAA40 At home exercises 1 1. Given, with as always the natural numbers starting at 1, let us define the following sets (with iff ): Give the number of elements in these sets as follows: 1. 23 2. 6 3.

More information

2. Functions, sets, countability and uncountability. Let A, B be sets (often, in this module, subsets of R).

2. Functions, sets, countability and uncountability. Let A, B be sets (often, in this module, subsets of R). 2. Functions, sets, countability and uncountability I. Functions Let A, B be sets (often, in this module, subsets of R). A function f : A B is some rule that assigns to each element of A a unique element

More information

Chapter 8 The Enhanced Entity- Relationship (EER) Model

Chapter 8 The Enhanced Entity- Relationship (EER) Model Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization

More information

CHAPTER 3 FUZZY RELATION and COMPOSITION

CHAPTER 3 FUZZY RELATION and COMPOSITION CHAPTER 3 FUZZY RELATION and COMPOSITION The concept of fuzzy set as a generalization of crisp set has been introduced in the previous chapter. Relations between elements of crisp sets can be extended

More information

Conceptual modeling of entities and relationships using Alloy

Conceptual modeling of entities and relationships using Alloy Conceptual modeling of entities and relationships using Alloy K. V. Raghavan Indian Institute of Science, Bangalore Conceptual modeling What is it? Capture requirements, other essential aspects of software

More information

Notes on metric spaces and topology. Math 309: Topics in geometry. Dale Rolfsen. University of British Columbia

Notes on metric spaces and topology. Math 309: Topics in geometry. Dale Rolfsen. University of British Columbia Notes on metric spaces and topology Math 309: Topics in geometry Dale Rolfsen University of British Columbia Let X be a set; we ll generally refer to its elements as points. A distance function, or metric

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe Chapter 12 Outline Overview of Object Database Concepts Object-Relational Features Object Database Extensions to SQL ODMG Object Model and the Object Definition Language ODL Object Database Conceptual

More information

2 A topological interlude

2 A topological interlude 2 A topological interlude 2.1 Topological spaces Recall that a topological space is a set X with a topology: a collection T of subsets of X, known as open sets, such that and X are open, and finite intersections

More information

CS 338 The Enhanced Entity-Relationship (EER) Model

CS 338 The Enhanced Entity-Relationship (EER) Model CS 338 The Enhanced Entity-Relationship (EER) Model Bojana Bislimovska Spring 2017 Major research Outline EER model overview Subclasses, superclasses and inheritance Specialization and generalization Modeling

More information

Functions. Def. Let A and B be sets. A function f from A to B is an assignment of exactly one element of B to each element of A.

Functions. Def. Let A and B be sets. A function f from A to B is an assignment of exactly one element of B to each element of A. Functions functions 1 Def. Let A and B be sets. A function f from A to B is an assignment of exactly one element of B to each element of A. a A! b B b is assigned to a a A! b B f ( a) = b Notation: If

More information

Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS

Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS Definition 1.1. Let X be a set and T a subset of the power set P(X) of X. Then T is a topology on X if and only if all of the following

More information

Chapter 11 Object and Object- Relational Databases

Chapter 11 Object and Object- Relational Databases Chapter 11 Object and Object- Relational Databases Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 11 Outline Overview of Object Database Concepts Object-Relational

More information

High Level Database Models

High Level Database Models ICS 321 Fall 2011 High Level Database Models Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 9/21/2011 Lipyeow Lim -- University of Hawaii at Manoa 1 Database

More information

Proceedings of the Workshop on OCL and Textual Modelling (OCL 2010)

Proceedings of the Workshop on OCL and Textual Modelling (OCL 2010) Electronic Communications of the EASST Volume 36 (2010) Proceedings of the Workshop on OCL and Textual Modelling (OCL 2010) An Overview of F-OML: An F-Logic Based Object Modeling Language Mira Balaban

More information

Slides for Faculty Oxford University Press All rights reserved.

Slides for Faculty Oxford University Press All rights reserved. Oxford University Press 2013 Slides for Faculty Assistance Preliminaries Author: Vivek Kulkarni vivek_kulkarni@yahoo.com Outline Following topics are covered in the slides: Basic concepts, namely, symbols,

More information

26. Object-Oriented Design. Java. Summer 2008 Instructor: Dr. Masoud Yaghini

26. Object-Oriented Design. Java. Summer 2008 Instructor: Dr. Masoud Yaghini 26. Object-Oriented Design Java Summer 2008 Instructor: Dr. Masoud Yaghini Object-Oriented Design In the preceding chapters you learned the concepts of object-oriented programming, such as objects, classes,

More information

Topology I Test 1 Solutions October 13, 2008

Topology I Test 1 Solutions October 13, 2008 Topology I Test 1 Solutions October 13, 2008 1. Do FIVE of the following: (a) Give a careful definition of connected. A topological space X is connected if for any two sets A and B such that A B = X, we

More information

axiomatic semantics involving logical rules for deriving relations between preconditions and postconditions.

axiomatic semantics involving logical rules for deriving relations between preconditions and postconditions. CS 6110 S18 Lecture 18 Denotational Semantics 1 What is Denotational Semantics? So far we have looked at operational semantics involving rules for state transitions, definitional semantics involving translations

More information

Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,

Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Classes, Class Diagrams Values and Attributes Operations

More information

Relational Database: The Relational Data Model; Operations on Database Relations

Relational Database: The Relational Data Model; Operations on Database Relations Relational Database: The Relational Data Model; Operations on Database Relations Greg Plaxton Theory in Programming Practice, Spring 2005 Department of Computer Science University of Texas at Austin Overview

More information

Bound Consistency for Binary Length-Lex Set Constraints

Bound Consistency for Binary Length-Lex Set Constraints Bound Consistency for Binary Length-Lex Set Constraints Pascal Van Hentenryck and Justin Yip Brown University, Box 1910 Carmen Gervet Boston University, Providence, RI 02912 808 Commonwealth Av. Boston,

More information

MATH 22 MORE ABOUT FUNCTIONS. Lecture M: 10/14/2003. Form follows function. Louis Henri Sullivan

MATH 22 MORE ABOUT FUNCTIONS. Lecture M: 10/14/2003. Form follows function. Louis Henri Sullivan MATH 22 Lecture M: 10/14/2003 MORE ABOUT FUNCTIONS Form follows function. Louis Henri Sullivan This frightful word, function, was born under other skies than those I have loved. Le Corbusier D ora innanzi

More information

Semantics of ARIS Model

Semantics of ARIS Model Semantics of ARIS Model Why is Semantics Important? Jon Atle Gulla An analysis of the ARIS ing language with respect to - conceptual foundation and - formal properties Green, P. and M. Rosemann: An Ontological

More information

Chapter 7: Entity-Relationship Model

Chapter 7: Entity-Relationship Model Chapter 7: Entity-Relationship Model Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 7: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram

More information

Chapter 7: Entity-Relationship Model

Chapter 7: Entity-Relationship Model Chapter 7: Entity-Relationship Model Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 7: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram

More information

Deformable Polygon Representation and Near-Mincuts

Deformable Polygon Representation and Near-Mincuts BOLYAI SOCIETY Building Bridges MATHEMATICAL STUDIES, 19 pp. 1 33. Deformable Polygon Representation and Near-Mincuts András A. Benczúr and Michel X. Goemans We derive a necessary and sufficient condition

More information

Complexity Theory. Compiled By : Hari Prasad Pokhrel Page 1 of 20. ioenotes.edu.np

Complexity Theory. Compiled By : Hari Prasad Pokhrel Page 1 of 20. ioenotes.edu.np Chapter 1: Introduction Introduction Purpose of the Theory of Computation: Develop formal mathematical models of computation that reflect real-world computers. Nowadays, the Theory of Computation can be

More information

2.1 Sets 2.2 Set Operations

2.1 Sets 2.2 Set Operations CSC2510 Theoretical Foundations of Computer Science 2.1 Sets 2.2 Set Operations Introduction to Set Theory A set is a structure, representing an unordered collection (group, plurality) of zero or more

More information

Using High-Level Conceptual Data Models for Database Design A Sample Database Application Entity Types, Entity Sets, Attributes, and Keys

Using High-Level Conceptual Data Models for Database Design A Sample Database Application Entity Types, Entity Sets, Attributes, and Keys Chapter 7: Data Modeling Using the Entity- Relationship (ER) Model Using High-Level Conceptual Data Models for Database Design A Sample Database Application Entity Types, Entity Sets, Attributes, and Keys

More information

Class modelling (part 2)

Class modelling (part 2) Class modelling (part 2) Fabrizio Maria Maggi Institute of Computer Science (these slides are derived from the book Object-oriented modeling and design with UML ) Qualified Associations What is the meaning

More information

Categorical models of type theory

Categorical models of type theory 1 / 59 Categorical models of type theory Michael Shulman February 28, 2012 2 / 59 Outline 1 Type theory and category theory 2 Categorical type constructors 3 Dependent types and display maps 4 Fibrations

More information

Cardinality Lectures

Cardinality Lectures Cardinality Lectures Enrique Treviño March 8, 014 1 Definition of cardinality The cardinality of a set is a measure of the size of a set. When a set A is finite, its cardinality is the number of elements

More information

CHAPTER 3 FUZZY RELATION and COMPOSITION

CHAPTER 3 FUZZY RELATION and COMPOSITION CHAPTER 3 FUZZY RELATION and COMPOSITION Crisp relation! Definition (Product set) Let A and B be two non-empty sets, the prod uct set or Cartesian product A B is defined as follows, A B = {(a, b) a A,

More information

SOFTWARE ENGINEERING DESIGN I

SOFTWARE ENGINEERING DESIGN I 2 SOFTWARE ENGINEERING DESIGN I 3. Schemas and Theories The aim of this course is to learn how to write formal specifications of computer systems, using classical logic. The key descriptional technique

More information

Problem. Prove that the square of any whole number n is a multiple of 4 or one more than a multiple of 4.

Problem. Prove that the square of any whole number n is a multiple of 4 or one more than a multiple of 4. CHAPTER 8 Integers Problem. Prove that the square of any whole number n is a multiple of 4 or one more than a multiple of 4. Strategy 13 Use cases. This strategy may be appropriate when A problem can be

More information

Comparing sizes of sets

Comparing sizes of sets Comparing sizes of sets Sets A and B are the same size if there is a bijection from A to B. (That was a definition!) For finite sets A, B, it is not difficult to verify that there is a bijection from A

More information

Chapter 7: Entity-Relationship Model

Chapter 7: Entity-Relationship Model Chapter 7: Entity-Relationship Model Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 7: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram

More information

The Inverse of a Schema Mapping

The Inverse of a Schema Mapping The Inverse of a Schema Mapping Jorge Pérez Department of Computer Science, Universidad de Chile Blanco Encalada 2120, Santiago, Chile jperez@dcc.uchile.cl Abstract The inversion of schema mappings has

More information

UML Tutorial. Unified Modeling Language UML Tutorial

UML Tutorial. Unified Modeling Language UML Tutorial UML Tutorial Unified Modeling Language UML Tutorial A Unified Modeling Language is a language for specifying, constructing, visualizing and documenting the software system and its components. UML is a

More information

Lecture 25 : Counting DRAFT

Lecture 25 : Counting DRAFT CS/Math 240: Introduction to Discrete Mathematics 4/28/2011 Lecture 25 : Counting Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Today we start the last topic of the course, counting. For

More information

Computer Science and Mathematics. Part I: Fundamental Mathematical Concepts Winfried Kurth

Computer Science and Mathematics. Part I: Fundamental Mathematical Concepts Winfried Kurth Computer Science and Mathematics Part I: Fundamental Mathematical Concepts Winfried Kurth http://www.uni-forst.gwdg.de/~wkurth/csm17_home.htm 1. Mathematical Logic Propositions - can be either true or

More information

Chapter 4 Fuzzy Logic

Chapter 4 Fuzzy Logic 4.1 Introduction Chapter 4 Fuzzy Logic The human brain interprets the sensory information provided by organs. Fuzzy set theory focus on processing the information. Numerical computation can be performed

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages

More information

Class modelling (part 2)

Class modelling (part 2) Class modelling (part 2) Fabrizio Maria Maggi Institute of Computer Science (these slides are derived from the book Object-oriented modeling and design with UML ) Qualified Associations What is the meaning

More information

High-Level Database Models (ii)

High-Level Database Models (ii) ICS 321 Spring 2011 High-Level Database Models (ii) Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 1 Logical DB Design: ER to Relational Entity sets to

More information

Relational Model: History

Relational Model: History Relational Model: History Objectives of Relational Model: 1. Promote high degree of data independence 2. Eliminate redundancy, consistency, etc. problems 3. Enable proliferation of non-procedural DML s

More information

2 Review of Set Theory

2 Review of Set Theory 2 Review of Set Theory Example 2.1. Let Ω = {1, 2, 3, 4, 5, 6} 2.2. Venn diagram is very useful in set theory. It is often used to portray relationships between sets. Many identities can be read out simply

More information

CHAPTER 8. Copyright Cengage Learning. All rights reserved.

CHAPTER 8. Copyright Cengage Learning. All rights reserved. CHAPTER 8 RELATIONS Copyright Cengage Learning. All rights reserved. SECTION 8.3 Equivalence Relations Copyright Cengage Learning. All rights reserved. The Relation Induced by a Partition 3 The Relation

More information

Guided Tour: Intelligent Conceptual Modelling in EER and UML-like class diagrams with icom compared to ORM2

Guided Tour: Intelligent Conceptual Modelling in EER and UML-like class diagrams with icom compared to ORM2 Guided Tour: Intelligent Conceptual Modelling in EER and UML-like class diagrams with icom compared to ORM2 Abstract. In this guided tour we illustrate the advantages of intelligent conceptual modelling,

More information

Chapter 6: Entity-Relationship Model

Chapter 6: Entity-Relationship Model Chapter 6: Entity-Relationship Model Database System Concepts, 5th Ed. See www.db-book.com for conditions on re-use Chapter 6: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram

More information

Model Finder. Lawrence Chung 1

Model Finder. Lawrence Chung 1 Model Finder Lawrence Chung 1 Comparison with Model Checking Model Checking Model (System Requirements) STM Specification (System Property) Temporal Logic Model Checker M φ Model Finder (http://alloy.mit.edu/tutorial3/alloy-tutorial.html)

More information

Software development using B method. Julien Cervelle LACL - UPEC

Software development using B method. Julien Cervelle LACL - UPEC Software development using B method Julien Cervelle LACL - UPEC Outline Introduction B abstract machine First order logic of set theory Substitutions Proof obligations Refinement Introduction B method

More information

The Language of Sets and Functions

The Language of Sets and Functions MAT067 University of California, Davis Winter 2007 The Language of Sets and Functions Isaiah Lankham, Bruno Nachtergaele, Anne Schilling (January 7, 2007) 1 The Language of Sets 1.1 Definition and Notation

More information

Chapter 10. Normalization. Chapter Outline. Chapter Outline(contd.)

Chapter 10. Normalization. Chapter Outline. Chapter Outline(contd.) Chapter 10 Normalization Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant Information in Tuples and Update Anomalies 1.3 Null

More information

Sets 1. The things in a set are called the elements of it. If x is an element of the set S, we say

Sets 1. The things in a set are called the elements of it. If x is an element of the set S, we say Sets 1 Where does mathematics start? What are the ideas which come first, in a logical sense, and form the foundation for everything else? Can we get a very small number of basic ideas? Can we reduce it

More information

Johns Hopkins Math Tournament Proof Round: Point Set Topology

Johns Hopkins Math Tournament Proof Round: Point Set Topology Johns Hopkins Math Tournament 2019 Proof Round: Point Set Topology February 9, 2019 Problem Points Score 1 3 2 6 3 6 4 6 5 10 6 6 7 8 8 6 9 8 10 8 11 9 12 10 13 14 Total 100 Instructions The exam is worth

More information

Sets MAT231. Fall Transition to Higher Mathematics. MAT231 (Transition to Higher Math) Sets Fall / 31

Sets MAT231. Fall Transition to Higher Mathematics. MAT231 (Transition to Higher Math) Sets Fall / 31 Sets MAT231 Transition to Higher Mathematics Fall 2014 MAT231 (Transition to Higher Math) Sets Fall 2014 1 / 31 Outline 1 Sets Introduction Cartesian Products Subsets Power Sets Union, Intersection, Difference

More information

1. true / false By a compiler we mean a program that translates to code that will run natively on some machine.

1. true / false By a compiler we mean a program that translates to code that will run natively on some machine. 1. true / false By a compiler we mean a program that translates to code that will run natively on some machine. 2. true / false ML can be compiled. 3. true / false FORTRAN can reasonably be considered

More information

Introduction III. Graphs. Motivations I. Introduction IV

Introduction III. Graphs. Motivations I. Introduction IV Introduction I Graphs Computer Science & Engineering 235: Discrete Mathematics Christopher M. Bourke cbourke@cse.unl.edu Graph theory was introduced in the 18th century by Leonhard Euler via the Königsberg

More information

Attribute Algebra for N-layer Metamodeling

Attribute Algebra for N-layer Metamodeling Proceedings of the 7th WSEAS International Conference on Applied Informatics and Communications, Athens, Greece, August 24-26, 2007 142 Attribute Algebra for N-layer Metamodeling GERGELY MEZEI, TIHAMÉR

More information

Ontological Modeling: Part 7

Ontological Modeling: Part 7 Ontological Modeling: Part 7 Terry Halpin LogicBlox and INTI International University This is the seventh in a series of articles on ontology-based approaches to modeling. The main focus is on popular

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Discrete Mathematics

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Discrete Mathematics About the Tutorial Discrete Mathematics is a branch of mathematics involving discrete elements that uses algebra and arithmetic. It is increasingly being applied in the practical fields of mathematics

More information

Scalable Analysis of Conceptual Data Models

Scalable Analysis of Conceptual Data Models Scalable Analysis of Conceptual Data Models Matthew J. McGill Michigan State University East Lansing, MI, USA mmcgill@cse.msu.edu Laura K. Dillon Michigan State University East Lansing, MI, USA ldillon@cse.msu.edu

More information

Discrete Mathematics Lecture 4. Harper Langston New York University

Discrete Mathematics Lecture 4. Harper Langston New York University Discrete Mathematics Lecture 4 Harper Langston New York University Sequences Sequence is a set of (usually infinite number of) ordered elements: a 1, a 2,, a n, Each individual element a k is called a

More information

Mathematics for Computer Science Exercises from Week 4

Mathematics for Computer Science Exercises from Week 4 Mathematics for Computer Science Exercises from Week 4 Silvio Capobianco Last update: 26 September 2018 Problems from Section 4.1 Problem 4.3. Set Formulas and Propositional Formulas. (a) Verify that the

More information

SWEN-220 Mathematical Models of Software

SWEN-220 Mathematical Models of Software SWEN-220 Mathematical Models of Software Introduction to Alloy Signatures, Fields, Facts, Predicates, and Assertions 2017 - Thomas Reichlmayr & Michael Lutz 1 Topics What is Alloy? Atoms, Sets, Relations

More information

Representing Product Designs Using a Description Graph Extension to OWL 2

Representing Product Designs Using a Description Graph Extension to OWL 2 Representing Product Designs Using a Description Graph Extension to OWL 2 Henson Graves Lockheed Martin Aeronautics Company Fort Worth Texas, USA henson.graves@lmco.com Abstract. Product development requires

More information

Module 11. Directed Graphs. Contents

Module 11. Directed Graphs. Contents Module 11 Directed Graphs Contents 11.1 Basic concepts......................... 256 Underlying graph of a digraph................ 257 Out-degrees and in-degrees.................. 258 Isomorphism..........................

More information

Relational Databases

Relational Databases Relational Databases Jan Chomicki University at Buffalo Jan Chomicki () Relational databases 1 / 49 Plan of the course 1 Relational databases 2 Relational database design 3 Conceptual database design 4

More information

Engineering Design w/embedded Systems

Engineering Design w/embedded Systems 1 / 40 Engineering Design w/embedded Systems Lecture 33 UML Patrick Lam University of Waterloo April 4, 2013 2 / 40 What is UML? Unified Modelling Language (UML): specify and document architecture of large

More information

Topology problem set Integration workshop 2010

Topology problem set Integration workshop 2010 Topology problem set Integration workshop 2010 July 28, 2010 1 Topological spaces and Continuous functions 1.1 If T 1 and T 2 are two topologies on X, show that (X, T 1 T 2 ) is also a topological space.

More information

SET DEFINITION 1 elements members

SET DEFINITION 1 elements members SETS SET DEFINITION 1 Unordered collection of objects, called elements or members of the set. Said to contain its elements. We write a A to denote that a is an element of the set A. The notation a A denotes

More information

MODELS OF CUBIC THEORIES

MODELS OF CUBIC THEORIES Bulletin of the Section of Logic Volume 43:1/2 (2014), pp. 19 34 Sergey Sudoplatov MODELS OF CUBIC THEORIES Abstract Cubic structures and cubic theories are defined on a base of multidimensional cubes.

More information