Programming Theory. Mohamed Faouzi Atig. Uppsala University. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
|
|
- Sherman Moody
- 7 years ago
- Views:
Transcription
1 Programming Theory Mohamed Faouzi Atig Uppsala University M. F. Atig (Uppsala University) Programming Theory September 03, / 25
2 People to help you! Lecturer: Mohamed Faouzi Atig, office 1452, mohamed Teacher Assistants: Othmane Rezine, office 1456, Aleksandar Zeljic, Webpage: (including related topics, schedule, old exams, etc.) M. F. Atig (Uppsala University) Programming Theory September 03, / 25
3 Prerequisites Background in Programming and Programming Languages. Basic understanding in Mathematical Logic. Course in Program Semantics is useful. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
4 Registration The admitted students, including those who are admitted with a condition, must web-register themselves for the course in the Student Portal. Students who are unable to web-register, should contact IT-kansliet/the Student Office. Web-(un)registration is possible until September 17 M. F. Atig (Uppsala University) Programming Theory September 03, / 25
5 Admission/ Registration Non-admitted students wanting to be registered. Please apply for the course at via Late application ( Sen anmälan ). Master students should contact their programme coordinator/programme counsellor. Exchange students should contact Ulrika Jaresund, who is the exchange student coordinator at the IT Dept. Students with an older registration, who want to re-register, should contact IT-kansliet. Students who are reserves on the reserve list, will be contacted by IT-kansliet/the Student Office if they are admitted. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
6 The course in a nutshell Course form: Lectures, tutorials, and labs. Mandatory Assignment: There are lab assignments that all participants have to complete before hard deadlines. Oral exam. Optional Assignment: There are three (optional) assignments. Each can earn you up to 4 points (out of 100) in the final exam. Quizzes: You can earn up to 4 points in the final exam by answering correctly to the quizzes at the beginning of lectures. Examination: Final written exam. No books are allowed only a sheet that will be distributed at the exam. Grade: To get the 10 credits of this course you must: Pass the mandatory assignment, and Get 50 out from 100 in the final exam: 50 3, 70 4, and M. F. Atig (Uppsala University) Programming Theory September 03, / 25
7 Literature Online materials in the course webpage. D. Gries, The Science of Programming. Springer Verlag. Parosh A. A., Logic in Programming, compendium. (can be purchased in the student shop at UTHgård (building 73).) M. F. Atig (Uppsala University) Programming Theory September 03, / 25
8 Introduction M. F. Atig (Uppsala University) Programming Theory September 03, / 25
9 Programs Solving a problem using computers 1 Design an algorithm. 2 Implement the algorithm as a program. Examples Order a list of integers. Find the shortest path between two nodes in a graph. Compute the first 100 prime numbers. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
10 Properties of Programs Properties of programs Efficiency Reliability (Correctness ) This course: Software Reliability As society becomes dependent on software, the consequence of software failures are non-trivial: Money lost. Lives lost. Clients lost. Jobs lost. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
11 Software Bug: Space Disaster Ariane 5 Space mission $ 7, 000, 000, Years in the making 40 seconds after take off the rocket exploded M. F. Atig (Uppsala University) Programming Theory September 03, / 25
12 Software Bug: Space Disaster Attempt to cram a 64-floating point number to a 16-bit integer failed M. F. Atig (Uppsala University) Programming Theory September 03, / 25
13 Software Bugs: Cause of Deaths Several deaths of cancer patients were due to overdoses of radiation resulting from a race condition between concurrent tasks in the Therac-25 software M. F. Atig (Uppsala University) Programming Theory September 03, / 25
14 Cost of Failure Software failures were estimated to cost the US economy about $60 billion annually [NIST 2002] Improvements in software verification infrastructure may save one-third of this cost Testing accounts for an estimated 50%-80% of the cost of software development [Beizer 1990] M. F. Atig (Uppsala University) Programming Theory September 03, / 25
15 What is a Bug? Specification An abstract description of the behavior of the programs (e.g., the computations performed by the program). Sorting Input: list x = (x 1,x 2,...,x n ) of natural numbers. Output: list y = (y 1,y 2,...,y n ) such that: y is a permutation of x. y1 y 2 y n. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
16 Correctness (Reliability) Correctness (Reliability) Is the implementation correct with respect to the specification? Does the implementation satisfy the specification? Examples Does the program that accepts an array of integers produce a sorted array? Does the program never access unallocated memory? M. F. Atig (Uppsala University) Programming Theory September 03, / 25
17 Checking Correctness Testing Simulate the program for some input data. Check whether the output data is consistent with the specification. Disadvantages Exhaustive testing infeasible in practice. Testing can detect errors, but not prove their absence. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
18 Verification Implementation Verification Yes / No Specification Verification Given an implementation and a specification, the verification system answers yes/no: Yes: the program satisfies the specification No: the program is faulty M. F. Atig (Uppsala University) Programming Theory September 03, / 25
19 Synthesis Specification Synthesis Implementation Synthesis Given a specification, derive a correct implementation. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
20 Describing specifications and implementations Formal Methods Based on rigorous mathematical principles Concepts from discrete mathematics and mathematical logic Utility Eliminate inconsistencies and ambiguities Perform systematic analysis M. F. Atig (Uppsala University) Programming Theory September 03, / 25
21 Examples of formal methods (1/2) Hardware circuits Specification: Hardware description language (VHDL) Implementation: Hardware circuit Logical Programming Specification: First-order Predicate Logic Implementation: PROLOG M. F. Atig (Uppsala University) Programming Theory September 03, / 25
22 Examples of formal methods (2/2) Imperative programs Specification: First-order Predicate Logic Implementation: C Distributed systems Specification: Temporal logic Implementation: Transition systems M. F. Atig (Uppsala University) Programming Theory September 03, / 25
23 Goal of this course In this course we study how to: Write rigorous descriptions of implementations and specifications of programs. Verify programs, i.e., prove that the implementation of a program meets its specification using formal methods. Write a correct program from a given specification. M. F. Atig (Uppsala University) Programming Theory September 03, / 25
24 Relevance Connection between Mathematical Logic and Programming. Interesting research area. Industrial relevance: Volvo, Ericsson, Bell Labs, Prover Technology, NASA, Microsoft, Airbus,... M. F. Atig (Uppsala University) Programming Theory September 03, / 25
25 Schedule in a nutshell (lectures) Propositional Logic Predicate Logic Weakest Preconditions Operational Semantics Invariants Partial Correctness and Termination Synthesis M. F. Atig (Uppsala University) Programming Theory September 03, / 25
Rigorous Software Development CSCI-GA 3033-009
Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 1 Important Facts Office Hours: Thu 3-4pm, or by appointment Office: CIWW 407 Course web site: http://cs.nyu.edu/wies/teaching/rsd-13
More informationThe Course. http://www.cse.unsw.edu.au/~cs3153/
The Course http://www.cse.unsw.edu.au/~cs3153/ Lecturers Dr Peter Höfner NICTA L5 building Prof Rob van Glabbeek NICTA L5 building Dr Ralf Huuck NICTA ATP building 2 Plan/Schedule (1) Where and When Tuesday,
More informationModel Checking based Software Verification
Model Checking based Software Verification 18.5-2006 Keijo Heljanko Keijo.Heljanko@tkk.fi Department of Computer Science and Engineering Helsinki University of Technology http://www.tcs.tkk.fi/~kepa/ 1/24
More informationAutomated Theorem Proving - summary of lecture 1
Automated Theorem Proving - summary of lecture 1 1 Introduction Automated Theorem Proving (ATP) deals with the development of computer programs that show that some statement is a logical consequence of
More informationhttps://sites.google.com/a/asu.edu/cse-522-spring-12/ sensors and actuators? How do we handle the errors introduced due to noise, quantization etc?
CSE 522 Spring 12 https://sites.google.com/a/asu.edu/cse-522-spring-12/ 1 of 3 5/29/2012 16:56 CSE 522 Spring 12 Navigation CSE522: Real-Time Embedded Systems The Schedule Sitemap CSE522: Real-Time Embedded
More information340368 - FOPR-I1O23 - Fundamentals of Programming
Coordinating unit: 340 - EPSEVG - Vilanova i la Geltrú School of Engineering Teaching unit: 723 - CS - Department of Computer Science Academic year: Degree: 2015 BACHELOR'S DEGREE IN INFORMATICS ENGINEERING
More informationSpecification and Analysis of Contracts Lecture 1 Introduction
Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.
More informationCS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lecturer: Adrian O Riordan Office: Room G.71 WGB Email: a.oriordan cs.ucc.ie Course Webpage: http://www.cs.ucc.ie/~adrian/cs4507.html CS4507 Overview 5 Credit course
More informationHow To Write A Program Verification And Programming Book
Jose Bacelar Almeida Maria Joao Frade Jorge Sousa Pinto Simao Melo de Sousa Rigorous Software Development An Introduction to Program Verification & Springer Contents 1 Introduction 1 1.1 A Formal Approach
More informationComputer Science Information Sheet for entry in 2016. What is Computer Science?
Computer Science Information Sheet for entry in 2016 What is Computer Science? Computer Science is about understanding computer systems and networks at a deep level. Computers and the programs they run
More informationMaster Degree in Computer Science and Networking
Master Degree in Computer Science and Networking The two-year Master Degree (Laurea Magistrale) in Computer Science and Networking is a jointly Program offered by the University of Pisa Deparment of Computer
More informationDie wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist.
Die wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist. Christian Guß Application Engineer The MathWorks GmbH 2015 The MathWorks, Inc.
More informationThe Model Checker SPIN
The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(
More informationProgram Analysis: Theory and Practice
Introductions Program Analysis: Theory and Practice Who am I? About you? What do you want to get out of this class? Evan Chang Meeting 1: Welcome CSCI 7135, Fall 2010 http://www.cs.colorado.edu/~bec/courses/csci7135-f10/
More informationCS135 Computer Science I Spring 2015
CS135 Computer Science I Spring 2015 Instructor: Laura Pike Email: laura.pike@gbcnv.edu Phone: 775-753-2288 Office: HTC 131 Office Hours: Monday 9:00 11:30 am Thursday 1:00-3:30 pm Textbooks: ISBN: 978-0470927137,
More informationINF5140: Specification and Verification of Parallel Systems
Motivation INF5140: Specification and Verification of Parallel Systems Lecture 1 Introduction: Formal Methods Gerardo Schneider Department of Informatics University of Oslo INF5140, Spring 2009 Outline
More informationINDEPENDENT VERIFICATION AND VALIDATION OF EMBEDDED SOFTWARE
PREFERRED RELIABILITY PRACTICES PRACTICE NO. PD-ED-1228 PAGE 1 OF 6 INDEPENDENT VERIFICATION AND VALIDATION OF EMBEDDED SOFTWARE Practice: To produce high quality, reliable software, use Independent Verification
More informationIntroduction to Formal Methods. Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm
Introduction to Formal Methods Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm Outline Introduction Formal Specification Formal Verification Model Checking Theorem Proving Introduction Good papers to
More informationSoftware Testing & Analysis (F22ST3): Static Analysis Techniques 2. Andrew Ireland
Software Testing & Analysis (F22ST3) Static Analysis Techniques Andrew Ireland School of Mathematical and Computer Science Heriot-Watt University Edinburgh Software Testing & Analysis (F22ST3): Static
More informationWhy? A central concept in Computer Science. Algorithms are ubiquitous.
Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online
More informationFormal Verification and Linear-time Model Checking
Formal Verification and Linear-time Model Checking Paul Jackson University of Edinburgh Automated Reasoning 21st and 24th October 2013 Why Automated Reasoning? Intellectually stimulating and challenging
More informationSafety and Hazard Analysis
Safety and Hazard Analysis An F16 pilot was sitting on the runway doing the preflight and wondered if the computer would let him raise the landing gear while on the ground - it did A manufacturer of torpedoes
More informationECE 441/541 Advanced Digital Design and Field Programmable Gate Arrays Spring 2010
ECE 441/541 Advanced Digital Design and Field Programmable Gate Arrays Spring 2010 Course description: Course will provide a description of Field Programmable Gate Array (FPGA) technologies and the methods
More informationSample Syllabus (C++) CSCI 1301 Introduction to Programming Principles
Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles Knowledge Areas that contain topics and learning outcomes covered in the course Knowledge Areas Total Hours of Coverage Software Development
More informationECE 156A - Syllabus. Lecture 0 ECE 156A 1
ECE 156A - Syllabus Lecture 0 ECE 156A 1 Description Introduction to HDL basic elements, HDL simulation concepts, HDL concurrent statements with examples and applications, writing HDL for synthesis, and
More informationSoftware Verification: Infinite-State Model Checking and Static Program
Software Verification: Infinite-State Model Checking and Static Program Analysis Dagstuhl Seminar 06081 February 19 24, 2006 Parosh Abdulla 1, Ahmed Bouajjani 2, and Markus Müller-Olm 3 1 Uppsala Universitet,
More informationComputer Science 217
Computer Science 217 Midterm Exam Fall 2009 October 29, 2009 Name: ID: Instructions: Neatly print your name and ID number in the spaces provided above. Pick the best answer for each multiple choice question.
More informationHow To Improve Software Quality
Software Qualities Quality Assurance Maintainer Go Documentation Readable Ce Go Design Functionality Ease of use Ease of learning User Reliability Correctness Efficiency Low Cost Portability Increased
More informationEECS 294-98: Formal Methods for Engineering Education. Sanjit A. Seshia EECS, UC Berkeley
EECS 294-98: Formal Methods for Engineering Education Sanjit A. Seshia EECS, UC Berkeley Engineering Education (recent past) On-campus experience Instructor lectures / discusses in class Students listen
More informationModel Checking: An Introduction
Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI
More informationStatic Program Transformations for Efficient Software Model Checking
Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major
More informationCourse Bachelor of Information Technology majoring in Network Security or Data Infrastructure Engineering
Course Bachelor of Information Technology majoring in Network Security or Data Infrastructure Engineering Course Number HE20524 Location Meadowbank OVERVIEW OF SUBJECT REQUIREMENTS Note: This document
More informationRigorous Software Development CSCI-GA 3033-009
Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 11 Semantics of Programming Languages Denotational Semantics Meaning of a program is defined as the mathematical
More informationAppendices master s degree programme Artificial Intelligence 2014-2015
Appendices master s degree programme Artificial Intelligence 2014-2015 Appendix I Teaching outcomes of the degree programme (art. 1.3) 1. The master demonstrates knowledge, understanding and the ability
More informationCCA CYBER SECURITY TRACK
CCA CYBER SECURITY TRACK 2013-2014 CCA Advanced Cyber Security Track A detailed description of the advanced cyber security track. Courses to be offered in the CCA Advanced Cyber Security Track 2013-2014
More informationSurgical Technology Accelerated Alternate Delivery (AAD) Program (For all students in the program January 2015 or later)
Surgical Technology Accelerated Alternate Delivery (AAD) Program (For all students in the program January 2015 or later) General Information The Accelerated Alternate Delivery (AAD) Pathway in Surgical
More informationSystems on Chip Design
Systems on Chip Design College: Engineering Department: Electrical First: Course Definition, a Summary: 1 Course Code: EE 19 Units: 3 credit hrs 3 Level: 3 rd 4 Prerequisite: Basic knowledge of microprocessor/microcontroller
More informationCoverability for Parallel Programs
2015 http://excel.fit.vutbr.cz Coverability for Parallel Programs Lenka Turoňová* Abstract We improve existing method for the automatic verification of systems with parallel running processes. The technique
More informationML for the Working Programmer
ML for the Working Programmer 2nd edition Lawrence C. Paulson University of Cambridge CAMBRIDGE UNIVERSITY PRESS CONTENTS Preface to the Second Edition Preface xiii xv 1 Standard ML 1 Functional Programming
More informationStudy, Internship, and Examination Regulations. Academy Profession and Bachelor Degrees INTERNATIONAL BUSINESS COLLEGE MITROVICA
Study, Internship, and Examination Regulations Academy Profession and Bachelor Degrees INTERNATIONAL BUSINESS COLLEGE MITROVICA These study and examination regulations apply for the two year Academy Profession
More informationT-79.186 Reactive Systems: Introduction and Finite State Automata
T-79.186 Reactive Systems: Introduction and Finite State Automata Timo Latvala 14.1.2004 Reactive Systems: Introduction and Finite State Automata 1-1 Reactive Systems Reactive systems are a class of software
More informationTesting & Verification of Digital Circuits ECE/CS 5745/6745. Hardware Verification using Symbolic Computation
Testing & Verification of Digital Circuits ECE/CS 5745/6745 Hardware Verification using Symbolic Computation Instructor: Priyank Kalla (kalla@ece.utah.edu) 3 Credits Mon, Wed, 1:25-2:45pm, WEB L105 Office
More informationPROGRAMME SPECIFICATION POSTGRADUATE PROGRAMME
PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMME KEY FACTS Programme name Advanced Computer Science Award MSc School Mathematics, Computer Science and Engineering Department or equivalent Department of Computing
More informationDYERSBURG STATE COMMUNITY COLLEGE Course Syllabus
DYERSBURG STATE COMMUNITY COLLEGE Course Syllabus COURSE DEPARTMENT AND NUMBER: MATH 1830 COURSE NAME: Elementary Calculus NUMBER OF SEMESTER HOURS: Three semester hours INSTRUCTOR: Bobby Solmon TEXT:
More informationModel 2.4 Faculty member + student
Model 2.4 Faculty member + student Course syllabus for Formal languages and Automata Theory. Faculty member information: Name of faculty member responsible for the course Office Hours Office Number Email
More informationModel Checking of Software
Model Checking of Software Patrice Godefroid Bell Laboratories, Lucent Technologies SpecNCheck Page 1 August 2001 A Brief History of Model Checking Prehistory: transformational programs and theorem proving
More informationProgramme Specification (Postgraduate)
Programme Specification (Postgraduate) 1. Programme Title(s): MSc/PGDip*/PGCert* Data Analysis for Business Intelligence *Exit awards only 2. Awarding body or institution: University of Leicester 3. a)
More informationA Comparison of Student Learning in an Introductory Logic Circuits Course: Traditional Face-to-Face vs. Fully Online
A Comparison of Student Learning in an Introductory Logic Circuits Course: Traditional Face-to-Face vs. Fully Online Dr. Brock J. LaMeres Assistant Professor Electrical & Computer Engineering Dept Montana
More informationDigital Systems Design! Lecture 1 - Introduction!!
ECE 3401! Digital Systems Design! Lecture 1 - Introduction!! Course Basics Classes: Tu/Th 11-12:15, ITE 127 Instructor Mohammad Tehranipoor Office hours: T 1-2pm, or upon appointments @ ITE 441 Email:
More informationUniversity of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011
University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011 Department Mission The Department of Computer Science in the College of Arts and Sciences
More informationRules of the program leading to Bachelor of Science in Computer Science
University of Colorado Denver Department of Computer Science and Engineering Rules of the program leading to Bachelor of Science in Computer Science These degree requirements are in effect starting from
More informationA puzzle. Suppose that you want to run some JavaScript programs---all the cool kids are doing it.
A puzzle Suppose that you want to run some JavaScript programs---all the cool kids are doing it. However, you are deathly afraid that your mom/ significant other/boss will see the curse word b00 appear
More informationPhiladelphia University Faculty of Information Technology Department of Computer Science ----- Semester, 2007/2008.
Philadelphia University Faculty of Information Technology Department of Computer Science ----- Semester, 2007/2008 Course Syllabus Course Title: Computer Logic Design Course Level: 1 Lecture Time: Course
More informationTesting LTL Formula Translation into Büchi Automata
Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland
More informationMAP-I Programa Doutoral em Informática. Rigorous Software Development
MAP-I Programa Doutoral em Informática Rigorous Software Development Unidade Curricular em Teoria e Fundamentos Theory and Foundations (UCTF) DI-UM, DCC-FCUP May, 2012 Abstract This text presents a UCTF
More informationComputer Science/Software Engineering
292 School of Science and Engineering Computer Science/Software Engineering Everald E. Mills, PhD, Chair Objectives The computer science program seeks to prepare students for careers that require sophisticated
More informationEcommerce Designing ETP 450x (4 Units) - Laboratory Exercises
Designing ecommerce Applications ITP 450x (4 Units) Objective Fundamentals of business and technological elements of electronic commerce. The design of solutions for the Internet using ecommerce development
More informationPSG College of Technology, Coimbatore-641 004 Department of Computer & Information Sciences BSc (CT) G1 & G2 Sixth Semester PROJECT DETAILS.
PSG College of Technology, Coimbatore-641 004 Department of Computer & Information Sciences BSc (CT) G1 & G2 Sixth Semester PROJECT DETAILS Project Project Title Area of Abstract No Specialization 1. Software
More informationCourse Syllabus. MATH 1350-Mathematics for Teachers I. Revision Date: 8/15/2016
Course Syllabus MATH 1350-Mathematics for Teachers I Revision Date: 8/15/2016 Catalog Description: This course is intended to build or reinforce a foundation in fundamental mathematics concepts and skills.
More informationSlides based in part on previous lectures by Mahesh Vishwanathan, and by Gul Agha January 21, 2014 1
Contact Information CS477 Formal Software Development Methods Elsa L Gunter 2112 SC, UIUC egunter@illinois.edu http://courses.engr.illinois.edu/cs477 Office: 2112 SC Office Hours: Wednesdays 11:00am -
More informationOverview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification
Introduction Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Advanced Topics in Software Engineering 1 Concurrent Programs Characterized by
More informationCOURSE PROFILE. Local Credits. Theory+PS+Lab (hour/week) ECTS. Course Name Code Semester Term. Accounting Information Systems MAN552T I I 3 3 6
COURSE PROFILE Course Name Code Semester Term Accounting Information Systems Theory+PS+Lab (hour/week) Local Credits ECTS MAN552T I I 3 3 6 Prerequisites -- Course Language Course Type Turkish Mandatory
More informationThe ProB Animator and Model Checker for B
The ProB Animator and Model Checker for B A Tool Description Michael Leuschel and Michael Butler Department of Electronics and Computer Science University of Southampton Highfield, Southampton, SO17 1BJ,
More informationComparing Student Learning in a Required Electrical Engineering Undergraduate Course: Traditional Face-to-Face vs. Online
Comparing Student Learning in a Required Electrical Engineering Undergraduate Course: Traditional Face-to-Face vs. Online Carolyn Plumb and Brock LaMeres Montana State University, Bozeman, Montana, U.S.A.,
More informationNumber of hours in the semester L Ex. Lab. Projects SEMESTER I 1. Economy 45 18 27. 2. Philosophy 18 18. 4. Mathematical Analysis 45 18 27 Exam
Year 1 Lp. Course name Number of hours in the semester L Ex. Lab. Projects SEMESTER I 1. Economy 45 18 7. Philosophy 18 18 3. Linear Algebra 45 18 7 Exam 4. Mathematical Analysis 45 18 7 Exam 5. Economical
More informationPROGRAMME SPECIFICATION POSTGRADUATE PROGRAMMES. Masters in Management of Information Security and Risk
PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMMES KEY FACTS Programme name Masters in Management of Information Security and Risk Award MSc School School of Mathematics, Computer Science and Engineering
More informationPrinciples of Software Engineering: Course Outline. Ethan Jackson And Wolfram Schulte, Research in Software Engineering (RiSE) Microsoft Research
Principles of Software Engineering: Course Outline Ethan Jackson And Wolfram Schulte, Research in Software Engineering (RiSE) Microsoft Research Overview Motivation and Focus Syllabus Projects i. Motivation
More informationVerification of Triple Modular Redundancy (TMR) Insertion for Reliable and Trusted Systems
Verification of Triple Modular Redundancy (TMR) Insertion for Reliable and Trusted Systems Melanie Berg 1, Kenneth LaBel 2 1.AS&D in support of NASA/GSFC Melanie.D.Berg@NASA.gov 2. NASA/GSFC Kenneth.A.LaBel@NASA.gov
More informationEE360: Digital Design I Course Syllabus
: Course Syllabus Dr. Mohammad H. Awedh Fall 2008 Course Description This course introduces students to the basic concepts of digital systems, including analysis and design. Both combinational and sequential
More informationLecture 9 verifying temporal logic
Basics of advanced software systems Lecture 9 verifying temporal logic formulae with SPIN 21/01/2013 1 Outline for today 1. Introduction: motivations for formal methods, use in industry 2. Developing models
More informationSoftware Modeling and Verification
Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system
More informationRigorous Software Development An introduction
Rigorous Software Development An introduction Simão Melo de Sousa RELEASE (UBI), LIACC (Porto), CCTC (Minho) Computer Science Department University of Beira Interior, Portugal October 2011 S. Melo de Sousa
More informationTECHNICAL UNIVERSITY OF CRETE DATA STRUCTURES FILE STRUCTURES
TECHNICAL UNIVERSITY OF CRETE DEPT OF ELECTRONIC AND COMPUTER ENGINEERING DATA STRUCTURES AND FILE STRUCTURES Euripides G.M. Petrakis http://www.intelligence.tuc.gr/~petrakis Chania, 2007 E.G.M. Petrakis
More informationStatic vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together. Outline
Static vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together S. Tucker Taft and Brian Lesuer SQGNE December 2006 Outline The Challenges Facing Software Testing A Software Testing
More informationStatic Analysis. Find the Bug! 15-654: Analysis of Software Artifacts. Jonathan Aldrich. disable interrupts. ERROR: returning with interrupts disabled
Static Analysis 15-654: Analysis of Software Artifacts Jonathan Aldrich 1 Find the Bug! Source: Engler et al., Checking System Rules Using System-Specific, Programmer-Written Compiler Extensions, OSDI
More informationMAT 183 - Elements of Modern Mathematics Syllabus for Spring 2011 Section 100, TTh 9:30-10:50 AM; Section 200, TTh 8:00-9:20 AM
MAT 183 - Elements of Modern Mathematics Syllabus for Spring 2011 Section 100, TTh 9:30-10:50 AM; Section 200, TTh 8:00-9:20 AM Course Instructor email office ext. Thomas John, Ph.D. thjohn@syr.edu 224
More informationAlgorithmic Software Verification
Algorithmic Software Verification (LTL Model Checking) Azadeh Farzan What is Verification Anyway? Proving (in a formal way) that program satisfies a specification written in a logical language. Formal
More informationFINC 4531 B Intermediate Corporate Finance Tuesdays and Thursdays from 5:30-6:45, Adamson 227 Expanded Course Outline Fall 2010
FINC 4531 B Intermediate Corporate Finance Tuesdays and Thursdays from 5:30-6:45, Adamson 227 Expanded Course Outline Fall 2010 Professor: Charles Hodges Office: ADAMSON 205B Telephone: (678) 839-4816
More informationComputer Science. Discipline-Specific Admission Requirements. Alternate Admission Criteria
University of Missouri - Kansas City 1 Computer Science Discipline Coordinator Yugyung Lee, (816) 235-5932, leeyu@umkc.edu Computer Science faculty who are members of the doctoral faculty. Computer Science
More informationBEng Biomedical Engineering / BEng Biomedical Engineering with Placement
PROGRAMME SPECIFICATION KEY FACTS Programme name Award School Department or equivalent UCAS Code BEng Biomedical Engineering / BEng Biomedical Engineering with Placement BEng (Hons) School of Mathematics
More information6.080/6.089 GITCS Feb 12, 2008. Lecture 3
6.8/6.89 GITCS Feb 2, 28 Lecturer: Scott Aaronson Lecture 3 Scribe: Adam Rogal Administrivia. Scribe notes The purpose of scribe notes is to transcribe our lectures. Although I have formal notes of my
More informationDepartment Policies for Online Math Classes
Department Policies for Online Math Classes Your course syllabus and any policies specific to your course are on your course homepage. Access Codes are purchased at The Book Store at the register. Once
More informationDate approved or revised 8-21-15 Angelina College Business Division BUSI-1301 Business Principles Instructional Syllabus I. BASIC COURSE INFORMATION
I. BASIC COURSE INFORMATION Date approved or revised 8-21-15 Angelina College Business Division BUSI-1301 Business Principles Instructional Syllabus A. Course Description: (as stated in the bulletin, including
More informationASSESSMENT RECORD FOR DEPARTMENT OF
RECORD DEPARTMENT OF Form A Computer Science and Engineering -------------------------------------------------------------------------------------------------------------------------------------------------------------
More informationSoftware Testing. Quality & Testing. Software Testing
Software Testing Software Testing Error: mistake made by the programmer/developer Fault: a incorrect piece of code/document (i.e., bug) Failure: result of a fault Goal of software testing: Cause failures
More informationEEC 119B Spring 2014 Final Project: System-On-Chip Module
EEC 119B Spring 2014 Final Project: System-On-Chip Module Dept. of Electrical and Computer Engineering University of California, Davis Issued: March 14, 2014 Subject to Revision Final Report Due: June
More informationChecklist for Evaluating Online Courses
Educational Technology Cooperative Checklist for Evaluating Online Courses November 2006 Southern Regional Education Board 592 10th St. N.W. Atlanta, GA 30318 (404) 875-9211 www.sreb.org This publication
More informationCOMPUTER SCIENCE TRIPOS
CST.98.5.1 COMPUTER SCIENCE TRIPOS Part IB Wednesday 3 June 1998 1.30 to 4.30 Paper 5 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in five
More informationIntroduction to Algorithms March 10, 2004 Massachusetts Institute of Technology Professors Erik Demaine and Shafi Goldwasser Quiz 1.
Introduction to Algorithms March 10, 2004 Massachusetts Institute of Technology 6.046J/18.410J Professors Erik Demaine and Shafi Goldwasser Quiz 1 Quiz 1 Do not open this quiz booklet until you are directed
More informationIMPLEMENTATION REGULATIONS BACHELOR S DEGREE PROGRAMME AEROSPACE ENGINEERING DELFT UNIVERSITY OF TECHNOLOGY
IMPLEMENTATION REGULATIONS BACHELOR S DEGREE PROGRAMME AEROSPACE ENGINEERING DELFT UNIVERSITY OF TECHNOLOGY 2014-2015 TABLE OF CONTENTS Section 1 Bachelor s degree programme... 1 Article 1 The study load...
More informationDOVER-SHERBORN HIGH SCHOOL PROGRAM OF STUDIES
DOVER-SHERBORN HIGH SCHOOL PROGRAM OF STUDIES 2014-2015 Educational Technologies Intro to Computer Applications Computer Graphics Astronomy Web Design & Development Intro to Programming (Visual Basic)
More informationDiscrete Mathematics I Distance Learning (online) sections
FLORIDA STATE UNIVERSITY MAD 2104 Discrete Mathematics I Distance Learning (online) sections Summer 2014 https:/ /campus.fsu.edu Florida State University Tallahassee, Florida 32306 Copyright 2014 Florida
More informationTeaching Institution: Institute of Education, University of London
PROGRAMME SPECIFICATION MA in Special and Inclusive Education Awarding body: Institute of Education, University of London Teaching Institution: Institute of Education, University of London Name of final
More informationPROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES. Programme BEng Computer Systems Engineering/BEng Computer Systems Engineering with Placement
PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Programme BEng Computer Systems Engineering/BEng name Computer Systems Engineering with Placement Award BEng (Hons) School School of Engineering
More informationThe University of Akron Department of Mathematics. 3450:145-803 COLLEGE ALGEBRA 4 credits Spring 2015
The University of Akron Department of Mathematics 3450:145-803 COLLEGE ALGEBRA 4 credits Spring 2015 Instructor: Jonathan Hafner Email: jhafner@zips.uakron.edu Office: CAS 249 Phone: (330) 972 6158 Office
More informationTECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.
CH04 Capturing the Requirements Understanding what the customers and users expect the system to do * The Requirements Process * Types of Requirements * Characteristics of Requirements * How to Express
More informationMaster Degree Program in Computer Science (CS)
Master Degree Program in Computer Science (CS) Students holding Bachelor s degree in Computer Science are accepted as graduate students, after meeting the general requirements stated below. Applicants
More informationDigitools/Web Design Syllabus CHS Business/JVS/Family Consumer Science Department
1 Digitools/Web Design Syllabus CHS Business/JVS/Family Consumer Science Department Contact Information: Parents may contact me by phone, email or visiting the school. Teacher: Mrs. Patty Case Email Address:
More informationimtech Curriculum Presentation
imtech Curriculum Presentation Effective from Batch 2015 Onwards April, 2015 Course Structure Every course has a fixed number of credits associated with it (e.g., 4 credits) One has to earn 200 credits
More information02-201: Programming for Scientists
1. Course Information 1.1 Course description 02-201: Programming for Scientists Carl Kingsford Fall 2015 Provides a practical introduction to programming for students with little or no prior programming
More information