Computer Science School of Computing Clemson University Mathematical Modeling Murali Sitaraman Clemson University.

Slides:



Advertisements
Similar presentations
This research is funded in part the U. S. National Science Foundation grant CCR DEET for Component-Based Software Murali Sitaraman, Durga P. Gandi.
Advertisements

Computer Science School of Computing Clemson University Introduction to Mathematical Reasoning Jason Hallstrom and Murali Sitaraman Clemson University.
School of Computing Clemson University Mathematical Reasoning  Goal: To prove correctness  Method: Use a reasoning table  Prove correctness on all valid.
Addressing the Challenges of Current Software. Questions to Address Why? What? Where? How?
Computer Science and Engineering College of Engineering The Ohio State University Classes and Objects: Members, Visibility The credit for these slides.
CSE 425: Semantic Analysis Semantic Analysis Allows rigorous specification of a program’s meaning –Lets (parts of) programming languages be proven correct.
Week 1 Chapter 1 + Appendix A Signals carry information Signals are represented by functions Systems transform signals Systems are represented by functions,
Hypotheses. Hypotheses are about applying theory to your research question A good research paper starts with a context that conceptualizes the problem,
Mathematics throughout the CS Curriculum Support by NSF #
Data Structures Lecture-1:Introduction
An Evaluation of Planning and Scheduling Operations in Services A Thesis Proposal By Samuel Chukwuemeka Department of Computer Science Troy University.
Computer Science School of Computing Clemson University Discrete Math and Reasoning about Software Correctness Murali Sitaraman
Operations Research Models
Computer Science School of Computing Clemson University Specification and Reasoning in SE Projects Using a Web IDE Charles T. Cook (Clemson) Svetlana V.
Computer Science School of Computing Clemson University Mathematical Reasoning across the Curriculum Software Development Foundations and Software Engineering.
Data Structures Winter What is a Data Structure? A data structure is a method of organizing data. The study of data structures is particularly important.
 qT4 qT4  txh/mc_txh3_002.html.
Lecture 16 March 22, 2011 Formal Methods CS 315 Spring Adapted from slides provided by Jason Hallstrom and Murali Sitaraman (Clemson)
Using Specialized Content Courses to Facilitate Pathways for Teaching Mathematics in the Middle School Babette M. Benken, Ph.D. Department of Mathematics.
Lecture 3.1: Mathematical Induction CS 250, Discrete Structures, Fall 2014 Nitesh Saxena Adopted from previous lectures by Cinda Heeren, Zeph Grunschlag.
Computer Science School of Computing Clemson University Introduction to Formal Specification Murali Sitaraman Clemson University.
Lecture 7 Integrity & Veracity UFCE8K-15-M: Data Management.
Lecture 17 March 24, 2011 Formal Methods 2 CS 315 Spring Adapted from slides provided by Jason Hallstrom and Murali Sitaraman (Clemson)
Computer Science and Engineering College of Engineering The Ohio State University Interfaces The credit for these slides goes to Professor Paul Sivilotti.
computer
Computer Science Department Data Structure & Algorithms Lecture 8 Recursion.
Power of a Product and Power of a Quotient Let a and b represent real numbers and m represent a positive integer. Power of a Product Property Power of.
1 CSC 222: Computer Programming II Spring 2004 See online syllabus at: Course goals:
Computer Science School of Computing Clemson University Discrete Math and Reasoning about Software Correctness Joseph E. Hollingsworth
The Principle of Inclusion-Exclusion
Section 2.1. Section Summary Definition of sets Describing Sets Roster Method Set-Builder Notation Some Important Sets in Mathematics Empty Set and Universal.
This research is funded in part by grant CCR from the U. S. National Science Foundation. Profiles: A Compositional Mechanism for Performance Specification.
CSE 425: Control Abstraction I Functions vs. Procedures It is useful to differentiate functions vs. procedures –Procedures have side effects but usually.
More on Correctness. Prime Factorization Problem: Write a program that computes all the prime factors of a given number Solution (Idea): Factors are less.
1 RELATIONS Learning outcomes Students are able to: a. determine the properties of relations – reflexive, symmetric, transitive, and antisymmetric b. determine.
Douglas Wilhelm Harder, M.Math. LEL Department of Electrical and Computer Engineering University of Waterloo Waterloo, Ontario, Canada ece.uwaterloo.ca.
Algorithms & Data Structures (M) 2013–14 Prof David A Watt Moodle: Computing Science → Algorithms & Data Structures (IT) © 2008 David A Watt, University.
1 RELATIONS Learning outcomes Students are able to: a. determine the properties of relations – reflexive, symmetric, transitive, and antisymmetric b. determine.
EMIS 8373: Integer Programming Mathematical Programming Example 5: Reallocating Students to Achieve Racial Balance updated 18 January 2005.
Types and Programming Languages
Computer Science School of Computing Clemson University Mathematical Reasoning with Objects.
TCSS 342 Autumn 2004 Version TCSS 342 Data Structures & Algorithms Autumn 2004 Ed Hong.
Lecture 18 March 29, 2011 Formal Methods 3 CS 315 Spring Adapted from slides provided by Jason Hallstrom and Murali Sitaraman (Clemson)
CHAPTER 3 SETS, BOOLEAN ALGEBRA & LOGIC CIRCUITS
Modular Alternatives to Testing
Names and Attributes Names are a key programming language feature
Component Implementations Using RESOLVE
Formal Specification of Java Interfaces
Developing approaches to learning skills Step 1Objective strand: Approaches to learning skill: Step 2Explicit learning experience: Step 3Implicit learning.
NDA Coaching in Chandigarh
ECET 370 HELPS Lessons in Excellence- -ecet370helps.com.
ECET 370 HELPS Education for Service- - ecet370helps.com.
LIGHTING SYSTEM DESIGN CHALLENGE
Introduction to Components and Specifications Using RESOLVE
3-3 Side Effects A side effect is an action that results from the evaluation of an expression. For example, in an assignment, C first evaluates the expression.
Creating Electrical Circuits
Mathematics for Computer Science MIT 6.042J/18.062J
Formal Specification of Interfaces
Introduction to Components and Specifications Using RESOLVE
More Mathematical Reasoning (Conditional Statements)
Trees and minimum connector problems
Mathematical Reasoning with Data Abstractions
COMS 161 Introduction to Computing
RUN-TIME STORAGE Chuen-Liang Chen Department of Computer Science
Ben-Gurion University
ENGR 3300 – 505 Advanced Engineering Mathematics
Data science course in Bangalore.
Lecture 3.1: Mathematical Induction
Formal Methods Lecture 16 March 22, 2011 CS 315 Spring 2011
Integer Programming (IP)
Presentation transcript:

Computer Science School of Computing Clemson University Mathematical Modeling Murali Sitaraman Clemson University

School of Computing Clemson University Some mathematics is implicit  We view programming integers as though they are mathematical integers (subject to bounds, of course)  We associate mathematical operators (e.g., +) with operations we can do on integers in programs (e.g., +)  This can be made explicit

School of Computing Clemson University Mathematical modeling  Type Integer is modeled by Z;  Constraints for all i: Integer, min_int <= i <= max_int;

School of Computing Clemson University Alternatively…  Type Integer is modeled by Z;  Let i be an example Integer;  Constraints min_int <= i <= max_int;

School of Computing Clemson University Initial value specification…  Type Integer is modeled by Z;  exemplar i;  Constraints min_int <= i <= max_int;  initialization ensures i = 0;

School of Computing Clemson University Specification of operations …  Type Integer is modeled by Z;  …  specification of operations, e.g., i++  Operation Increment (updates i: Integer);  requires i < max_int;  ensures i = #i + 1;

School of Computing Clemson University More examples …  What is a suitable way to model the state of a light bulb?  …

School of Computing Clemson University More examples …  Type Light_Bulb_State is modeled by B;  exemplar b;  Initialization ensures b = false;  Exercises: specification of operations Turn_On, Turn_Off, and Is_On

School of Computing Clemson University More examples …  How would you model the state of a traffic light?  …  Alternative models and discussion

School of Computing Clemson University Data abstraction examples …  How would you mathematically model a the contents of a stack?  Is a set model appropriate?  Why or why not?  What about a queue?

School of Computing Clemson University Mathematical Modeling Summary  To write formal specifications, we need to model the state mathematically  Some objects we use in programming, such as Integers and Reals, have implicit models  For others, such as stacks, queues, lists, etc., we need to conceive explicit mathematical models