Relations. Power set Cartesian product Relation Function

Size: px
Start display at page:

Download "Relations. Power set Cartesian product Relation Function"

Transcription

1 Relations

2 Relations By the end of this part of the course the student should understand and be able to use the concepts of relations and functions in a Z specification. The concepts introduced are: Power set Cartesian product Relation Function

3 A Registry Specification Declarations registered is a set of STUDENTs options is a set of MODULES is_enrolled_on is a relation between STUDENTs and MODULEs Invariant More later, but essentially this is saying that Only STUDENTs who are registered may be enrolled_on MODULEs that are options.

4 Power Set The power set of a set is the set of all subsets of that set. The power set of a set A is written e.g. STUDENT = {Bill, John, Sue}

5 The power set of STUDENT Bill Sue John STUDENT= {Bill, John,Sue} Three Elements Bill John Sue Sue John Sue Bill John Bill Bill Sue John

6 If A has n elements, how many does its powerset have? % 0% 0% 0% 0%

7 Which of the following are in? % 0% 0% 0% 0%

8 Cartesian Product of two sets The cartesian product of two sets A and B is the set of all ordered pairs (x,y), where x is an element of A and y is an element of B The cartesian product of A and B is written A x B Example:

9 How many elements does A x B have? % 0% 0% 0%

10 Relations A Relation, ρ, from a set A to a set B, is a subset of AXB. It is a set of pairs. is_on = {(john,cs189), (sue,cs189), (sue,cs154)} knows_about={(john,cs189), (john,cs154), (bill,cs189), (bill,cs154), (sue,cs189), (sue,cs154) } likes={ } attends={(john,cs189), (john,cs154), (sue,cs189), (sue,cs154)}

11 Relations in UML diagrams The existence of a relationship between objects of type A and objects of type B is denoted: A B

12 Relations: sets of ordered pairs (mary, CS266) (john, CS189) (mark, CS189) (john,cs153) (william, CS266) (sue, CS153) (mark, CS153) (mary is_enrolled_on CS266) (john is_enrolled_on CS189) (john is_enrolled_on CS153) (mark is_enrolled_on CS189) (william is_enrolled_on CS266) (sue is_enrolled_on CS153) (mark is_enrolled_on CS153)

13 is_enrolled_on as a picture John Mary Sue Bill Mark William CS153 CS189 CS266 CS183 CS288

14 is_enrolled_on as a database table John John Mary Sue Mark Mark William CS153 CS189 CS266 CS153 CS153 CS189 CS266

15 Infix notation If then we can write This is called infix notation e.g. (Mary,CS266) is_enrolled_on written as Mary is_enrolled_on CS266 e.g. 2 < 3

16 Domain The domain of a relation is the set of all elements in A that are related by to something in B This is written Thus if then It is always true that

17 The set of students enrolled on some course dom(is_enrolled_on) Bill John Mary Sue Mark William CS153 CS189 CS266 CS183 CS288

18 What is dom(r)? 0% 0% 0% 0% 1. {a,b,c} 2. {(a,1),(a,2),(b,4)} 3. {a,b} 4. {1,2,4} a b 1 2 c R 4 3

19 Range The range of a relation is the set of all elements in B that are related by to something in A This is written Thus if then It is always true that

20 The set of courses with some students enrolled ran(is_enrolled_on) John Mary Sue Bill Mark William CS153 CS189 CS266 CS183 CS288

21 What is ran(r)? 0% 0% 0% 0% 1. {1,2,3,4} 2. {1,2} 3. {a,b} 4. None of the above a b 1 2 c R 4 3

22 Library example again is_on_loan_to is a relation from BOOKS to PEOPLE Library a set stock a set members A rule is_on_loan_to is_on_loan_to : BOOKS PEOPLE We will use relational notation to specify the library system

23 The Library state in Z We now have an INVARIANT on the Library state: that only elements of stock can be on loan, and only to members.

24 Borrowing Books Borrow(book b, person p) b is not already on loan to anyone Add b is on loan to p `Delta means change of state } Declare input parameters } Preconditions Postcondition

25 Exercise: returning books Return(book b, person p) b is currently on loan to p Remove b is on loan to p

26 Summary Power set Cartesian Product Relations Infix notation 2<3 Domain of a relation/function Range of a relation/function Z schemas Input and output parameters in Z event schemas [Currie chapters 6-7, Haggarty chapters 4-5 ]

27 More relational notation

28 Running example: registered Abigail Barney Charlotte Dora Emily Fran CS189 CS153 CS154 CS173 CS183

29 Domain restriction

30 registered without domain restriction Abigail Barney Charlotte Dora Emily Fran CS189 CS153 CS154 CS173 CS183

31 registered with domain restriction Abigail Barney Charlotte Dora Emily Fran CS189 CS153 CS154 CS173 CS183

32 Domain anti-restriction

33 Example: Registered with domain anti-restriction Abigail Barney Charlotte Dora Emily Fran CS189 CS153 CS154 CS173 CS183

34 Range restriction

35 Example: registered with a range restriction Abigail Barney Charlotte Dora Emily Fran CS189 CS153 CS154 CS173 CS183

36 Range anti-restriction

37 Example: registered with a range anti-restriction Abigail Barney Charlotte Dora Emily Fran CS189 CS153 CS154 CS173 CS183

38 What is denoted by? 0% 1. The course CS154 0% 0% 2. The people registered for CS Something else

39 What is denoted by? 0% 1. Those of ian, james, kate who have registered for some courses 0% 2. The courses ian, james, and kate have registered for 0% 3. The course registrations that ian, james, and kate are involved in

40 What is denoted by? 1. The people not registered for CS The people registered for courses other than CS The registrations for courses other than CS154 0% The people not re... The people regist... The registrations...

41 Relational inverse

42 Example: inverse of registered CS189 CS153 CS154 CS173 CS183 Abigail Barney Charlotte Dora Emily Fran

43 Relational image

44 Example: Registered Abigail Barney CS189 CS153 Charlotte Dora Emily Fran CS154 CS183 CS173

45 Example: extracting information from a relation

46 Exercise: extracting information

47 What denotes the courses that Ian is registered for? % 0% 0% 0%

48 Summary

49 Please ensure you return your handset before leaving. The handset is useless outside of this class and non-returns will decease the likelihood of future voting system use on this course.

CS 1200 Discrete Math Math Preliminaries. A.R. Hurson 323 CS Building, Missouri S&T

CS 1200 Discrete Math Math Preliminaries. A.R. Hurson 323 CS Building, Missouri S&T CS 1200 Discrete Math A.R. Hurson 323 CS Building, Missouri S&T hurson@mst.edu 1 Course Objective: Mathematical way of thinking in order to solve problems 2 Variable: holder. A variable is simply a place

More information

FMSE: Lecture 1. The Specification Language Z: Introduction

FMSE: Lecture 1. The Specification Language Z: Introduction FMSE: Lecture 1 The Specification Language Z: Introduction 1 FMSE: Lecture 1 2 Goals of Lecture 1 At the end of this lecture you should be able to: write down schemas for simple specification problems

More information

What Is A Relation? Example. is a relation from A to B.

What Is A Relation? Example. is a relation from A to B. 3.3 Relations What Is A Relation? Let A and B be nonempty sets. A relation R from A to B is a subset of the Cartesian product A B. If R A B and if (a, b) R, we say that a is related to b by R and we write

More information

Relational terminology. Databases - Sets & Relations. Sets. Membership

Relational terminology. Databases - Sets & Relations. Sets. Membership Relational terminology Databases - & Much of the power of relational databases comes from the fact that they can be described analysed mathematically. In particular, queries can be expressed with absolute

More information

Relational Model, Relational Algebra, and SQL

Relational Model, Relational Algebra, and SQL Relational Model, Relational Algebra, and SQL August 29, 2007 1 Relational Model Data model. constraints. Set of conceptual tools for describing of data, data semantics, data relationships, and data integrity

More information

Largest Online Community of VU Students

Largest Online Community of VU Students WWW.VUPages.com http://forum.vupages.com WWW.VUTUBE.EDU.PK Largest Online Community of VU Students MIDTERM EXAMINATION SEMESTER FALL 2003 CS301-DATA STRUCTURE Total Marks:86 Duration: 60min Instructions

More information

Tutorial notes on. Requirements analysis

Tutorial notes on. Requirements analysis Tutorial notes on Requirements analysis Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University Page 1 of 12 Exercise 1. Consider an email client software. The client

More information

Largest Online Community of VU Students

Largest Online Community of VU Students WWW.VUPages.com WWW.VUTUBE.EDU.PK http://forum.vupages.com Largest Online Community of VU Students MIDTERM EXAMINATION SEMESTER FALL 2003 CS301-DATA STRUCTURE Total Marks:86 Duration: 60min Instructions

More information

Relational Model and Relational Algebra A Short Review Class Notes - CS582-01

Relational Model and Relational Algebra A Short Review Class Notes - CS582-01 Relational Model and Relational Algebra A Short Review Class Notes - CS582-01 Tran Cao Son January 12, 2002 0.1 Basics The following definitions are from the book [1] Relational Model. Relations are tables

More information

Lecture 19: Functions, Types and Data Structures in Haskell

Lecture 19: Functions, Types and Data Structures in Haskell The University of North Carolina at Chapel Hill Spring 2002 Lecture 19: Functions, Types and Data Structures in Haskell Feb 25 1 Functions Functions are the most important kind of value in functional programming

More information

CS 1110: Introduction to Computing Using Python Loop Invariants

CS 1110: Introduction to Computing Using Python Loop Invariants CS 1110: Introduction to Computing Using Python Lecture 21 Loop Invariants [Andersen, Gries, Lee, Marschner, Van Loan, White] Announcements Prelim 2 conflicts due by midnight tonight Lab 11 is out Due

More information

Relational Query Languages: Relational Algebra. Juliana Freire

Relational Query Languages: Relational Algebra. Juliana Freire Relational Query Languages: Relational Algebra Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model supports simple, powerful QLs: Simple

More information

Largest Online Community of VU Students

Largest Online Community of VU Students WWW.VUPages.com WWW.VUTUBE.EDU.PK http://forum.vupages.com Largest Online Community of VU Students MIDTERM EXAMINATION SEMESTER FALL 2003 CS301-DATA STRUCTURE Total Marks:86 Duration: 60min Instructions

More information

A. Basic theory of contracts B. Application: UML use cases C. Extension: temporal reasoning with contracts

A. Basic theory of contracts B. Application: UML use cases C. Extension: temporal reasoning with contracts Part II A. Basic theory of contracts B. Application: UML use cases C. Extension: temporal reasoning with contracts Presentation is based on the article: R. J. R. Back, L. Petre and I. Porres, Analyzing

More information

Formal specification in Event-B

Formal specification in Event-B 2IW80 Software specification and architecture Formal specification in Event-B Alexander Serebrenik, Ulyana Tikhonova Outline Introduction into formal specification Mathematical notation of Event-B Event-B

More information

CS233:HACD Introduction to Relational Databases Notes for Section 4: Relational Algebra, Principles and Part I 1. Cover slide

CS233:HACD Introduction to Relational Databases Notes for Section 4: Relational Algebra, Principles and Part I 1. Cover slide File: CS233-HACD-Notes4.doc Printed at: 16:15 on Friday, 28 October, 2005 CS233:HACD Introduction to Relational Databases Notes for Section 4: Relational Algebra, Principles and Part I 1. Cover slide In

More information

What we have seen so far CSC 142. Object based programming in Java [Reading: chapter 4] Another example. java.awt. Initializing instance fields

What we have seen so far CSC 142. Object based programming in Java [Reading: chapter 4] Another example. java.awt. Initializing instance fields CSC 142 Object based programming in Java [Reading: chapter 4] CSC 142 C 1 What we have seen so far A class is made of instance fields: attributes of the class objects instance methods: behavior of the

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

Standard ML. Curried Functions. ML Curried Functions.1

Standard ML. Curried Functions. ML Curried Functions.1 Standard ML Curried Functions ML Curried Functions.1 Curried Functions Side Note: Infix function declaration o Curried Function declaration o Declaring via "fun" o Function Calling Order o Examples o Mixing

More information

Conceptual Data Modeling

Conceptual Data Modeling Conceptual Data odeling A data model is a way to describe the structure of the data. In models that are implemented it includes a set of operations that manipulate the data. A Data odel is a combination

More information

Entity-Relationship Modelling. Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables

Entity-Relationship Modelling. Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables Entity-Relationship Modelling Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables 1 Entity Sets A enterprise can be modeled as a collection of: entities, and

More information

Lecture 17: Classes (Chapter 15)

Lecture 17: Classes (Chapter 15) http://www.cs.cornell.edu/courses/cs1110/2018sp Lecture 17: Classes (Chapter 15) CS 1110 Introduction to Computing Using Python [E. Andersen, A. Bracy, D. Gries, L. Lee, S. Marschner, C. Van Loan, W. White]

More information

Administration Naive DBMS CMPT 454 Topics. John Edgar 2

Administration Naive DBMS CMPT 454 Topics. John Edgar 2 Administration Naive DBMS CMPT 454 Topics John Edgar 2 http://www.cs.sfu.ca/coursecentral/454/johnwill/ John Edgar 4 Assignments 25% Midterm exam in class 20% Final exam 55% John Edgar 5 A database stores

More information

Refresher: ER-modeling, logical relational model, dependencies. Toon Calders

Refresher: ER-modeling, logical relational model, dependencies. Toon Calders Refresher: ER-modeling, logical relational model, dependencies Toon Calders toon.calders@ulb.ac.be Different Levels Conceptual level: ER-diagrams Logical level: Relations, attributes, schemas, primary

More information

Database System Concepts, 5 th Ed.! Silberschatz, Korth and Sudarshan See for conditions on re-use "

Database System Concepts, 5 th Ed.! Silberschatz, Korth and Sudarshan See   for conditions on re-use Database System Concepts, 5 th Ed.! Silberschatz, Korth and Sudarshan See www.db-book.com for conditions on re-use " Structure of Relational Databases! Fundamental Relational-Algebra-Operations! Additional

More information

EducoSoft. Student Registration

EducoSoft. Student Registration EducoSoft Student Registration 1. Register 2-5 2. Register using Access Code 6-8 3. Pay for Web Access and Register 9-14 4. Purchase a Book and Register 15 21 5. Repeat Registration 22-23 1 1. Register

More information

Assignment 7: Inheritance

Assignment 7: Inheritance Assignment 7: Inheritance ETH Zurich Hand-out: 11 December 2006 Due: 19 December 2006 Calvin and Hobbes c Bill Watterson 1 Dynamic exercise Goal Understand the effects of dynamic binding. Summary Have

More information

CS411 Database Systems. 04: Relational Algebra Ch 2.4, 5.1

CS411 Database Systems. 04: Relational Algebra Ch 2.4, 5.1 CS411 Database Systems 04: Relational Algebra Ch 2.4, 5.1 1 Basic RA Operations 2 Set Operations Union, difference Binary operations Remember, a relation is a SET of tuples, so set operations are certainly

More information

MATVEC: MATRIX-VECTOR COMPUTATION LANGUAGE REFERENCE MANUAL. John C. Murphy jcm2105 Programming Languages and Translators Professor Stephen Edwards

MATVEC: MATRIX-VECTOR COMPUTATION LANGUAGE REFERENCE MANUAL. John C. Murphy jcm2105 Programming Languages and Translators Professor Stephen Edwards MATVEC: MATRIX-VECTOR COMPUTATION LANGUAGE REFERENCE MANUAL John C. Murphy jcm2105 Programming Languages and Translators Professor Stephen Edwards Language Reference Manual Introduction The purpose of

More information

Informatics 1: Data & Analysis

Informatics 1: Data & Analysis Informatics 1: Data & Analysis Lecture 5: Relational Algebra Ian Stark School of Informatics The University of Edinburgh Tuesday 31 January 2017 Semester 2 Week 3 https://blog.inf.ed.ac.uk/da17 Tutorial

More information

1. Go to and then click on the Bookstore link. Select Faculty Adoptions.

1. Go to   and then click on the Bookstore link. Select Faculty Adoptions. Online Textbook Adoption Process 1. Go to www.matc.edu and then click on the Bookstore link. Select Faculty Adoptions. 2. If you have not done so already, register yourself by selecting Register Here.

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

Graphs Eulerian and Hamiltonian Applications Graph layout software. Graphs. SET07106 Mathematics for Software Engineering

Graphs Eulerian and Hamiltonian Applications Graph layout software. Graphs. SET07106 Mathematics for Software Engineering Graphs SET76 Mathematics for Software Engineering School of Computing Edinburgh Napier University Module Leader: Uta Priss 2 Copyright Edinburgh Napier University Graphs Slide /3 Outline Graphs Eulerian

More information

60-265: Winter ANSWERS Exercise 4 Combinational Circuit Design

60-265: Winter ANSWERS Exercise 4 Combinational Circuit Design 60-265: Winter 2010 Computer Architecture I: Digital Design ANSWERS Exercise 4 Combinational Circuit Design Question 1. One-bit Comparator [ 1 mark ] Consider two 1-bit inputs, A and B. If we assume that

More information

CORRECTNESS ISSUES AND LOOP INVARIANTS

CORRECTNESS ISSUES AND LOOP INVARIANTS Aout A2 and feedack. Recursion 2 CORRECTNESS ISSUES AND LOOP INVARIANTS S2 has een graded. If you got 30/30, you will proaly have no feedack. If you got less than full credit, there should e feedack showing

More information

CS 132 Exam #1 - Study Suggestions

CS 132 Exam #1 - Study Suggestions CS 132 - Exam #1 Study Suggestions p. 1 * last modified: 2-16-05 CS 132 Exam #1 - Study Suggestions * The test covers through HW #3, the Week 5 Lab Exercise Exercise, and material through the 2-14-05 lecture/2-16-05

More information

CPS122 Lecture: Detailed Design and Implementation

CPS122 Lecture: Detailed Design and Implementation CPS122 Lecture: Detailed Design and Implementation Objectives: Last revised March 3, 2017 1. To introduce the use of a complete UML class box to document the name, attributes, and methods of a class 2.

More information

THE COPPERBELT UNIVERSITY

THE COPPERBELT UNIVERSITY THE COPPERBELT UNIVERSITY SCHOOL OF INFORMATION AND COMMUNICATION TECHNOLOGY IT/IS DEPARTMENT MAY, 2018 SESSIONAL EXAMINATIONS CS235 DATABASE TECHNOLOGY TIME ALLOWED: THREE HOURS INSTRUCTIONS : Maximum

More information

1 Memory management in C++

1 Memory management in C++ Dynamic/Heap Memory CS 101 Abhiram Ranade Goal for today: Understand pointers and memory management in C++ Specific problem to solve: we want to be able to write something like: void turtlemain(){ poly

More information

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 18 Thursday, March 29, 2018 In abstract algebra, algebraic structures are defined by a set of elements and operations

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

M359: Relational Databases: theory and practice Notes to accompany slides on Relational Algebra

M359: Relational Databases: theory and practice Notes to accompany slides on Relational Algebra File: M359-Notes-on-RA.doc Printed at: 17:43 on Monday, 11 April, 2011 1. Cover slide M359: Relational Databases: theory and practice Notes to accompany slides on Relational Algebra Hugh Darwen An algebra

More information

IMS1002/CSE1205 Lectures 1

IMS1002/CSE1205 Lectures 1 IMS1002/CSE1205 Systems Analysis and Design Lecture 2 & 3 Introduction to Data Modelling Entity Relationship Modelling Data Modelling Focus on the information aspects of the organisation In a database

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

Specifications. Prof. Clarkson Fall Today s music: Nice to know you by Incubus

Specifications. Prof. Clarkson Fall Today s music: Nice to know you by Incubus Specifications Prof. Clarkson Fall 2015 Today s music: Nice to know you by Incubus Question Would you like a tiny bonus to your final grade for being here on time today? A. Yes B. Sí C. Hai D. Haan E.

More information

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques Fundamentals, Design, and Implementation, 9/e Three Schema Model ANSI/SPARC introduced the three schema model in 1975 It provides a framework

More information

MIDTERM EXAMINATION. CSE 130: Principles of Programming Languages. Professor Goguen. February 16, points total

MIDTERM EXAMINATION. CSE 130: Principles of Programming Languages. Professor Goguen. February 16, points total CSE 130, Winter 2006 MIDTERM EXAMINATION CSE 130: Principles of Programming Languages Professor Goguen February 16, 2006 100 points total Don t start the exam until you are told to. Turn off any cell phone

More information

Unit- III (Functional dependencies and Normalization, Relational Data Model and Relational Algebra)

Unit- III (Functional dependencies and Normalization, Relational Data Model and Relational Algebra) Unit- III (Functional dependencies and Normalization, Relational Data Model and Relational Algebra) Important questions Section A :(2 Marks) 1.What is Functional Dependency? Functional dependency (FD)

More information

Relational Algebra. Relational Query Languages

Relational Algebra. Relational Query Languages Relational Algebra Davood Rafiei 1 Relational Query Languages Languages for describing queries on a relational database Three variants Relational Algebra Relational Calculus SQL Query languages v.s. programming

More information

RELATION AND RELATIONAL OPERATIONS

RELATION AND RELATIONAL OPERATIONS Relation: RELATION AND RELATIONAL OPERATIONS A table with a distinct name for each column (attribute). Each attribute A i has associated with it a domain D i of possible values that may appear in that

More information

1.3 Functions and Equivalence Relations 1.4 Languages

1.3 Functions and Equivalence Relations 1.4 Languages CSC4510 AUTOMATA 1.3 Functions and Equivalence Relations 1.4 Languages Functions and Equivalence Relations f : A B means that f is a function from A to B To each element of A, one element of B is assigned

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

CS 1044 Program 6 Summer I dimension ??????

CS 1044 Program 6 Summer I dimension ?????? Managing a simple array: Validating Array Indices Most interesting programs deal with considerable amounts of data, and must store much, or all, of that data on one time. The simplest effective means for

More information

This book is licensed under a Creative Commons Attribution 3.0 License

This book is licensed under a Creative Commons Attribution 3.0 License 6. Syntax Learning objectives: syntax and semantics syntax diagrams and EBNF describe context-free grammars terminal and nonterminal symbols productions definition of EBNF by itself parse tree grammars

More information

MIS2502: Data Analytics Relational Data Modeling - 1. JaeHwuen Jung

MIS2502: Data Analytics Relational Data Modeling - 1. JaeHwuen Jung MIS2502: Data Analytics Relational Data Modeling - 1 JaeHwuen Jung jaejung@temple.edu http://community.mis.temple.edu/jaejung Where we are Now we re here Data entry Transactional Database Data extraction

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

Input Space Partitioning

Input Space Partitioning Input Space Partitioning Instructor : Ali Sharifara CSE 5321/4321 Summer 2017 CSE 5321/4321, Ali Sharifara, UTA 1 Input Space Partitioning Introduction Equivalence Partitioning Boundary-Value Analysis

More information

Week 4 Tute/Lab Entity-Relationship (ER) Model

Week 4 Tute/Lab Entity-Relationship (ER) Model ISYS1055/1057 Database Concepts 2018 Semester 2 Week 4 Tute/Lab Entity-Relationship (ER) Model The objectives of this tute/lab session are: Learn about the entity-relationship model; Learn how to build

More information

Data Structure (CS301)

Data Structure (CS301) WWW.VUPages.com http://forum.vupages.com WWW.VUTUBE.EDU.PK Largest Online Community of VU Students Virtual University Government of Pakistan Midterm Examination Spring 2003 Data Structure (CS301) StudentID/LoginID

More information

4/10/2018. Relational Algebra (RA) 1. Selection (σ) 2. Projection (Π) Note that RA Operators are Compositional! 3.

4/10/2018. Relational Algebra (RA) 1. Selection (σ) 2. Projection (Π) Note that RA Operators are Compositional! 3. Lecture 33: The Relational Model 2 Professor Xiannong Meng Spring 2018 Lecture and activity contents are based on what Prof Chris Ré of Stanford used in his CS 145 in the fall 2016 term with permission

More information

Announcements. Relational Model & Algebra. Example. Relational data model. Example. Schema versus instance. Lecture notes

Announcements. Relational Model & Algebra. Example. Relational data model. Example. Schema versus instance. Lecture notes Announcements Relational Model & Algebra CPS 216 Advanced Database Systems Lecture notes Notes version (incomplete) available in the morning on the day of lecture Slides version (complete) available after

More information

CS Lecture 19: Loop invariants

CS Lecture 19: Loop invariants CS 1110 Lecture 19: Loop invariants Announcements Prelim 2 conflicts Today (April 2) is two weeks before the prelim, and the deadline for submitting prelim conflicts. Instructor travel This week and the

More information

Student name and surname: Student ID: EXAMINATION

Student name and surname: Student ID: EXAMINATION Student name and surname: Student ID: EXAMINATION The exam is open-book, open-laptop, and open-internet. You are not allowed to share information with anyone during the exam other than the lecturer. You

More information

Introduction to Unified Modelling Language (UML)

Introduction to Unified Modelling Language (UML) IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Introduction to Unified

More information

CS 1063 Introduction to Computer Programming Midterm Exam 2 Section 1 Sample Exam

CS 1063 Introduction to Computer Programming Midterm Exam 2 Section 1 Sample Exam Seat Number Name CS 1063 Introduction to Computer Programming Midterm Exam 2 Section 1 Sample Exam This is a closed book exam. Answer all of the questions on the question paper in the space provided. If

More information

LOGIC AND DISCRETE MATHEMATICS

LOGIC AND DISCRETE MATHEMATICS LOGIC AND DISCRETE MATHEMATICS A Computer Science Perspective WINFRIED KARL GRASSMANN Department of Computer Science University of Saskatchewan JEAN-PAUL TREMBLAY Department of Computer Science University

More information

CS 1110, LAB 12: SEQUENCE ALGORITHMS First Name: Last Name: NetID:

CS 1110, LAB 12: SEQUENCE ALGORITHMS   First Name: Last Name: NetID: CS 1110, LAB 12: SEQUENCE ALGORITHMS http://www.cs.cornell.edu/courses/cs1110/2014fa/labs/lab12.pdf First Name: Last Name: NetID: This last lab is extremely important. It helps you understand how to construct

More information

Typed Lambda Calculus for Syntacticians

Typed Lambda Calculus for Syntacticians Department of Linguistics Ohio State University January 12, 2012 The Two Sides of Typed Lambda Calculus A typed lambda calculus (TLC) can be viewed in two complementary ways: model-theoretically, as a

More information

Assertions & Verification & Example Loop Invariants Example Exam Questions

Assertions & Verification & Example Loop Invariants Example Exam Questions 2014 November 27 1. Assertions & Verification & Example Loop Invariants Example Exam Questions 2. A B C Give a general template for refining an operation into a sequence and state what questions a designer

More information

1 Relational Data Model

1 Relational Data Model Prof. Dr.-Ing. Wolfgang Lehner INTELLIGENT DATABASE GROUP 1 Relational Data Model What is in the Lecture? 1. Database Usage Query Programming Design 2 Relational Model 3 The Relational Model The Relation

More information

Coordinate Transformations in Advanced Calculus

Coordinate Transformations in Advanced Calculus Coordinate Transformations in Advanced Calculus by Sacha Nandlall T.A. for MATH 264, McGill University Email: sacha.nandlall@mail.mcgill.ca Website: http://www.resanova.com/teaching/calculus/ Fall 2006,

More information

Chapter 6 The Relational Algebra and Relational Calculus

Chapter 6 The Relational Algebra and Relational Calculus Chapter 6 The Relational Algebra and Relational Calculus Fundamentals of Database Systems, 6/e The Relational Algebra and Relational Calculus Dr. Salha M. Alzahrani 1 Fundamentals of Databases Topics so

More information

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques Fundamentals, Design, and Implementation, 9/e Three Schema Model ANSI/SPARC introduced the three schema model in 1975 It provides a framework

More information

Propositional Calculus. CS 270: Mathematical Foundations of Computer Science Jeremy Johnson

Propositional Calculus. CS 270: Mathematical Foundations of Computer Science Jeremy Johnson Propositional Calculus CS 270: Mathematical Foundations of Computer Science Jeremy Johnson Propositional Calculus Objective: To provide students with the concepts and techniques from propositional calculus

More information

COMP 430 Intro. to Database Systems

COMP 430 Intro. to Database Systems COMP 430 Intro. to Database Systems Multi-table SQL Get clickers today! Slides use ideas from Chris Ré and Chris Jermaine. The need for multiple tables Using a single table leads to repeating data Provides

More information

E-BOOK / UML NOTATION USE CASE DIAGRAM DOWNLOAD

E-BOOK / UML NOTATION USE CASE DIAGRAM DOWNLOAD 13 April, 2018 E-BOOK / UML NOTATION USE CASE DIAGRAM DOWNLOAD Document Filetype: PDF 97.38 KB 0 E-BOOK / UML NOTATION USE CASE DIAGRAM DOWNLOAD UML Use Case Diagram is a type of Behavior Diagrams that

More information

CSC 501 Semantics of Programming Languages

CSC 501 Semantics of Programming Languages CSC 501 Semantics of Programming Languages Subtitle: An Introduction to Formal Methods. Instructor: Dr. Lutz Hamel Email: hamel@cs.uri.edu Office: Tyler, Rm 251 Books There are no required books in this

More information

OO System Models Static Views

OO System Models Static Views OO System Models Static Views UML Class & Object Diagrams Software Engineering OO Models Class Diagram Slide 1 Objective Introduces the evolutionary approach for building classes Explain how to identify

More information

CS411 Database Systems. 05: Relational Schema Design Ch , except and

CS411 Database Systems. 05: Relational Schema Design Ch , except and CS411 Database Systems 05: Relational Schema Design Ch. 3.1-3.5, except 3.4.2-3.4.3 and 3.5.3. 1 How does this fit in? ER Diagrams: Data Definition Translation to Relational Schema: Data Definition Relational

More information

CAS CS 460/660 Introduction to Database Systems. Relational Algebra 1.1

CAS CS 460/660 Introduction to Database Systems. Relational Algebra 1.1 CAS CS 460/660 Introduction to Database Systems Relational Algebra 1.1 Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model supports simple,

More information

8.2.1 and 2 Lesson Date: Definition of Translation and Three Basic Properties

8.2.1 and 2 Lesson Date: Definition of Translation and Three Basic Properties 8.2.1 and 2 Lesson Date: Definition of Translation and Three Basic Properties Student Objectives I can perform translations of figures along a specific vector. I can label the image of the figure using

More information

CS352 Lecture - Data Models

CS352 Lecture - Data Models CS352 Lecture - Data Models Objectives: 1. To briefly introduce the entity-relationship model 2. To introduce the relational model. 3. To introduce relational algebra Last revised January 18, 2017 Materials:

More information

Object Modeling. Entity-Relationship (ER) diagrams (1976) Object Modelling Technique (OMT) diagrams (1991)

Object Modeling. Entity-Relationship (ER) diagrams (1976) Object Modelling Technique (OMT) diagrams (1991) Created by Janusz R. Getta, School of Computing and Information Technology, University of Wollongong Building 3, room 2120, ext 4339, jrg@uow.edu.au, http://www.uow.edu.au/ jrg Object Modeling Outline

More information

MIDTERM EXAMINATION - CS130 - Spring 2003

MIDTERM EXAMINATION - CS130 - Spring 2003 MIDTERM EXAMINATION - CS130 - Spring 2003 Your full name: Your UCSD ID number: This exam is closed book and closed notes Total number of points in this exam: 120 + 10 extra credit This exam counts for

More information

University of Toronto. CSC340S - Information Systems Analysis and Design

University of Toronto. CSC340S - Information Systems Analysis and Design csc340 Information Systems Analysis and Design page 1/12 University of Toronto Faculty of Arts and Science Department of Computer Science CSC340S - Information Systems Analysis and Design Spring 2002 John

More information

CS 377 Database Systems

CS 377 Database Systems CS 377 Database Systems Relational Algebra and Calculus Li Xiong Department of Mathematics and Computer Science Emory University 1 ER Diagram of Company Database 2 3 4 5 Relational Algebra and Relational

More information

Chapter 2: Relational Model

Chapter 2: Relational Model Chapter 2: Relational Model Database System Concepts, 5 th Ed. See www.db-book.com for conditions on re-use Chapter 2: Relational Model Structure of Relational Databases Fundamental Relational-Algebra-Operations

More information

CS100: DISCRETE STRUCTURES

CS100: DISCRETE STRUCTURES CS: DISCRETE STRUCTURES Computer Science Department Lecture : Set and Sets Operations (Ch2) Lecture Contents 2 Sets Definition. Some Important Sets. Notation used to describe membership in sets. How to

More information

Jython. secondary. memory

Jython. secondary. memory 2 Jython secondary memory Jython processor Jython (main) memory 3 Jython secondary memory Jython processor foo: if Jython a

More information

CS 1110, LAB 13: SEQUENCE ALGORITHMS

CS 1110, LAB 13: SEQUENCE ALGORITHMS CS 1110, LAB 13: SEQUENCE ALGORITHMS http://www.cs.cornell.edu/courses/cs1110/2017fa/labs/lab13/ First Name: Last Name: NetID: This final lab of the course helps you practice with more complicated invariants

More information

Entity Relationship modeling from an ORM perspective: Part 2

Entity Relationship modeling from an ORM perspective: Part 2 Entity Relationship modeling from an ORM perspective: Part 2 Terry Halpin Microsoft Corporation Introduction This article is the second in a series of articles dealing with Entity Relationship (ER) modeling

More information

CS 1110: Introduction to Computing Using Python Lists and Sequences

CS 1110: Introduction to Computing Using Python Lists and Sequences CS : Introduction to Computing Using Python Lecture Lists and Sequences [Andersen, Gries, Lee, Marschner, Van Loan, White] Prelim Lecture Announcements Date: Tuesday, March 4th, 7:3 pm to 9: pm Submit

More information

RELATIONAL QUERY LANGUAGES

RELATIONAL QUERY LANGUAGES RELATIONAL QUERY LANGUAGES These comments we make on the relational data model are a short introduction to the types of query languages which can be used against a relational database. Before we start

More information

Exam Duration: 2hrs and 30min Software Design

Exam Duration: 2hrs and 30min Software Design Exam Duration: 2hrs and 30min. 433-254 Software Design Section A Multiple Choice (This sample paper has less questions than the exam paper The exam paper will have 25 Multiple Choice questions.) 1. Which

More information

Lecture 2: Introduction to SQL

Lecture 2: Introduction to SQL Lecture 2: Introduction to SQL Lecture 2 Announcements! 1. If you still have Jupyter trouble, let us know! 2. Enroll to Piazza!!! 3. People are looking for groups. Team up! 4. Enrollment should be finalized

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

Software Design Models, Tools & Processes. Lecture 2: Inception Phase Cecilia Mascolo

Software Design Models, Tools & Processes. Lecture 2: Inception Phase Cecilia Mascolo Software Design Models, Tools & Processes Lecture 2: Inception Phase Cecilia Mascolo Inception Phase This is the phase when most of the system requirements are identified. Discover and reach agreement

More information

Code No: R Set No. 1

Code No: R Set No. 1 Code No: R05010106 Set No. 1 1. (a) Draw a Flowchart for the following The average score for 3 tests has to be greater than 80 for a candidate to qualify for the interview. Representing the conditional

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

Today s Topics. What is a set?

Today s Topics. What is a set? Today s Topics Introduction to set theory What is a set? Set notation Basic set operations What is a set? Definition: A set is an unordered collection of objects Examples: Sets can contain items of mixed

More information