Introduction to Computer Programming

Size: px
Start display at page:

Download "Introduction to Computer Programming"

Transcription

1 Introduction to Computer Programming Lecture 01 Software engineering is a field of engineering, for designing and writing programs for computers or other electronic devices. A software engineer, or programmer, writes software (or changes existing software) and compiles software using methods that improve it. Kasun@dscs.sjp.ac.lk Department of Computer Science University of Sri Jayewardanepura 2 The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. An engineering discipline that is concerned with all aspects of software production. Structure Programming Data & process centric Global data - unsecure Repeat code segments Uses Flowcharts, DFD, ER etc. for diagramming OOP Real world concepts more understandable Secure Reusable Uses Unified Modeling Language (UML) for diagramming 3 4 The main program coordinates calls to procedures and hands over appropriate data as parameters. Objects of the program interact by sending messages to each other 1

2 Analysis SRS To identify what to be solve Feasibility Worth while of solving Elicitation Designing SDS Large system, team work, long time, huge money Words are ambiguous, No language barrier, Quick massage, different views Coding Testing Deployment Maintenance 7 8 Analysis Designing Coding Testing Maintenance Waterfall Model Iterative Model V-Shaped Model Verification and Validation model Spiral Model Big Bang Model RAD Prototyping Agile Model 9 7/28/ /28/ /28/

3

4 /28/ /28/ DFD maps out the flow of information for any process or system. Process Datastore Dataflow External Entity

5 7/28/ Faculty of Applied Sciences of USJP 26 7/28/ Faculty of Applied Sciences of USJP

6

7 Action Stubs Condition Stubs 7/28/2017 Rules Div by 4 Conditions and Actions Rule Rule Rule Rule C1 : Year Div by 4 N Y Y Y C2 : Year Div by 100 N N Y Y N Not leap year Y Div by 100 N Y C3 : Year Div by 400 N N N Y A1 : Leap year N Y N Y Leap year Div by 400 N Not leap year Y Leap year 7/28/ Kasun@dscs.sjp.ac.lk - Faculty of Applied Sciences of USJP

8

9

10

11 61 62 Syntax Compiler can detect. Logical Incorrect logic. Compiler can t detect. Should detect by humans. Most hard to detect. Run time Memory overflows, System failures due to incorrect inputs and etc Black box testing. Don t see the code, check inputs & outputs. White box testing inputs, outputs and the code. Unit testing each module(function) separately. Integration testing whole system together. Acceptance testing with client. Alpha testing real data but simulated or selected environment. Beta testing real data in real environment

12 Manual Automatic Static Code Inspection Syntax checking Dynamic Desk checking Code walkthrough Unit testing Integration testing If a=0, then it is a Linear Equation Else it is a quadratic equation of one of these cases b 2 4ac Case 1 : delta=0 : One real root Case 2 : delta>0 : Two real roots Case 3 : delta<0 : Two imaginary roots ax 2 bx c 0 b x b 2 4ac 2a 70 ID Test Case Inputs Expected output Observed output 1 Linear equation 2 Two real roots 3 One real root a = 0, b = 4, c = 5 a = 1, b = -7, c = 12 a = 1, b = 2, c = 1 4 Two imaginary roots a = 1, b = 2, c = 10 X = X 1 = 3 X 2 = 4 X 1 = -1 X 2 = -1 X 1 = i X 2 = -1-3i X 7/28/ Kasun@dscs.sjp.ac.lk - Faculty of Applied Sciences of USJP 72 12

13

Information System Design IT60105

Information System Design IT60105 Information System Design IT60105 Lecture 19 Project Planning Lecture #19 ISD Project Planning SPMP Documentation System Design Models 2 Why Planning Information System Design? Program vs. Software Size

More information

Static Program Analysis

Static Program Analysis Static Program Analysis Xiangyu Zhang The slides are compiled from Alex Aiken s Michael D. Ernst s Sorin Lerner s A Scary Outline Type-based analysis Data-flow analysis Abstract interpretation Theorem

More information

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use An object-oriented design process Process stages Structured design processes involve developing a number of different system models. They require a lot of effort for development and maintenance of these

More information

Information System Desig

Information System Desig n IT60105 Lecture 7 Unified Modeling Language Lecture #07 Unified Modeling Language Introduction to UML Applications of UML UML Definition Learning UML Things in UML Structural Things Behavioral Things

More information

ECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview

ECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview 407 Computer Aided Design for Electronic Systems Simulation Instructor: Maria K. Michael Overview What is simulation? Design verification Modeling Levels Modeling circuits for simulation True-value simulation

More information

Model Checking: An Introduction

Model Checking: An Introduction Model Checking: An Introduction Meeting 3, CSCI 5535, Spring 2013 Announcements Homework 0 ( Preliminaries ) out, due Friday Saturday This Week Dive into research motivating CSCI 5535 Next Week Begin foundations

More information

Transactions on Information and Communications Technologies vol 18, 1998 WIT Press, ISSN

Transactions on Information and Communications Technologies vol 18, 1998 WIT Press,   ISSN GIS in the process of road design N.C. Babic, D. Rebolj & L. Hanzic Civil Engineering Informatics Center, University ofmaribor, Faculty of Civil Engineering, Smetanova 17, 2000 Maribor, Slovenia. E-mail:

More information

Sequential Logic (3.1 and is a long difficult section you really should read!)

Sequential Logic (3.1 and is a long difficult section you really should read!) EECS 270, Fall 2014, Lecture 6 Page 1 of 8 Sequential Logic (3.1 and 3.2. 3.2 is a long difficult section you really should read!) One thing we have carefully avoided so far is feedback all of our signals

More information

Section A.6. Solving Equations. Math Precalculus I. Solving Equations Section A.6

Section A.6. Solving Equations. Math Precalculus I. Solving Equations Section A.6 Section A.6 Solving Equations Math 1051 - Precalculus I A.6 Solving Equations Simplify 1 2x 6 x + 2 x 2 9 A.6 Solving Equations Simplify 1 2x 6 x + 2 x 2 9 Factor: 2x 6 = 2(x 3) x 2 9 = (x 3)(x + 3) LCD

More information

Static Program Analysis using Abstract Interpretation

Static Program Analysis using Abstract Interpretation Static Program Analysis using Abstract Interpretation Introduction Static Program Analysis Static program analysis consists of automatically discovering properties of a program that hold for all possible

More information

Robust Programs with Filtered Iterators

Robust Programs with Filtered Iterators Robust Programs with Filtered Iterators Jiasi Shen, Martin Rinard MIT EECS & CSAIL 1 Standard Scenario Input file Program Output 2 Structured Input Units Input Input unit Input unit Input unit unit Program

More information

Lexical Analysis: DFA Minimization & Wrap Up

Lexical Analysis: DFA Minimization & Wrap Up Lexical Analysis: DFA Minimization & Wrap Up Automating Scanner Construction PREVIOUSLY RE NFA (Thompson s construction) Build an NFA for each term Combine them with -moves NFA DFA (subset construction)

More information

Axiomatic Semantics. Operational semantics. Good for. Not good for automatic reasoning about programs

Axiomatic Semantics. Operational semantics. Good for. Not good for automatic reasoning about programs Review Operational semantics relatively l simple many flavors (small vs. big) not compositional (rule for while) Good for describing language implementation reasoning about properties of the language eg.

More information

Fault Localization in In Vivo Software Testing

Fault Localization in In Vivo Software Testing Fault Localization in In Vivo Software Testing by Del Slane A Thesis submitted to the Faculty in partial fulfillment of the requirements for the BACHELOR OF ARTS Accepted Paul Shields, Thesis Advisor Charles

More information

Requirements Validation. Content. What the standards say (*) ?? Validation, Verification, Accreditation!! Correctness and completeness

Requirements Validation. Content. What the standards say (*) ?? Validation, Verification, Accreditation!! Correctness and completeness Requirements Validation Requirements Management Requirements Validation?? Validation, Verification, Accreditation!! Check if evrything is OK With respect to what? Mesurement associated with requirements

More information

UML modeling for INF5150

UML modeling for INF5150 UML modeling for INF5150 Version 101022 ICU 0-1 22-Oct-10 INF5150 Unassailable IT-systems 1 Disciplined Heterogeneous Modeling Edward A. Lee Robert S. Pepper Distinguished Professor EECS Department UC

More information

Probabilistic NetKAT

Probabilistic NetKAT Probabilistic NetKAT Nate Foster (Cornell) Dexter Kozen (Cornell) Konstantinos Mamouras (Penn) Mark Reitblatt (Facebook) Alexandra Silva (UCL) Steffen Smolka (Cornell) Team ProbNetKAT Nate Foster Dexter

More information

Computer Science Introductory Course MSc - Introduction to Java

Computer Science Introductory Course MSc - Introduction to Java Computer Science Introductory Course MSc - Introduction to Java Lecture 1: Diving into java Pablo Oliveira ENST Outline 1 Introduction 2 Primitive types 3 Operators 4 5 Control Flow

More information

The State Explosion Problem

The State Explosion Problem The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis

More information

Formal Specification and Verification. Specifications

Formal Specification and Verification. Specifications Formal Specification and Verification Specifications Imprecise specifications can cause serious problems downstream Lots of interpretations even with technicaloriented natural language The value returned

More information

Abstract Machine for Software Process Models

Abstract Machine for Software Process Models Abstract Machine for Software Process Models Finite State Machine for SPM Waterfall Incremental Spiral Extreme Programming (XP) Scrum Generalized Abstract Machine for SPM Problem set: objectives with colors

More information

Recursive descent for grammars with contexts

Recursive descent for grammars with contexts 39th International Conference on Current Trends in Theory and Practice of Computer Science Špindleruv Mlýn, Czech Republic Recursive descent parsing for grammars with contexts Ph.D. student, Department

More information

Comp 11 Lectures. Mike Shah. July 26, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 26, / 40

Comp 11 Lectures. Mike Shah. July 26, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 26, / 40 Comp 11 Lectures Mike Shah Tufts University July 26, 2017 Mike Shah (Tufts University) Comp 11 Lectures July 26, 2017 1 / 40 Please do not distribute or host these slides without prior permission. Mike

More information

md5bloom: Forensic Filesystem Hashing Revisited

md5bloom: Forensic Filesystem Hashing Revisited DIGITAL FORENSIC RESEARCH CONFERENCE md5bloom: Forensic Filesystem Hashing Revisited By Vassil Roussev, Timothy Bourg, Yixin Chen, Golden Richard Presented At The Digital Forensic Research Conference DFRWS

More information

List reversal: back into the frying pan

List reversal: back into the frying pan List reversal: back into the frying pan Richard Bornat March 20, 2006 Abstract More than thirty years ago Rod Burstall showed how to do a proof of a neat little program, shown in a modern notation in figure

More information

Acceptance Test. Mohamed Mussa, Ferhat Khendek

Acceptance Test. Mohamed Mussa, Ferhat Khendek Acceptance Optimization Mohamed Mussa, Ferhat Khendek SAM 2014 Outline Background Problem Statement Overall Approach Integration test cases selection Comparing test models Conclusion 2 Background process

More information

What if the characteristic equation has a double root?

What if the characteristic equation has a double root? MA 360 Lecture 17 - Summary of Recurrence Relations Friday, November 30, 018. Objectives: Prove basic facts about basic recurrence relations. Last time, we looked at the relational formula for a sequence

More information

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan Combinational Logic Mantıksal Tasarım BBM23 section instructor: Ufuk Çelikcan Classification. Combinational no memory outputs depends on only the present inputs expressed by Boolean functions 2. Sequential

More information

Program Verification using Separation Logic Lecture 0 : Course Introduction and Assertion Language. Hongseok Yang (Queen Mary, Univ.

Program Verification using Separation Logic Lecture 0 : Course Introduction and Assertion Language. Hongseok Yang (Queen Mary, Univ. Program Verification using Separation Logic Lecture 0 : Course Introduction and Assertion Language Hongseok Yang (Queen Mary, Univ. of London) Dream Automatically verify the memory safety of systems software,

More information

Applying Predicate Logic to Monitoring Network Traffic

Applying Predicate Logic to Monitoring Network Traffic Applying Predicate Logic to Monitoring Network Traffic Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at

More information

FSM model for sequential circuits

FSM model for sequential circuits 1 FSM model for sequential circuits The mathematical model of a sequential circuit is called finite-state machine. FSM is fully characterized by: S Finite set of states ( state ~ contents of FFs) I Finite

More information

Lecture Notes on Quantification

Lecture Notes on Quantification Lecture Notes on Quantification 15-317: Constructive Logic Frank Pfenning Lecture 5 September 8, 2009 1 Introduction In this lecture, we introduce universal and existential quantification As usual, we

More information

MTAT Software Engineering

MTAT Software Engineering MTAT.03.094 Software Engineering Lecture 14: Measurement Dietmar Pfahl Fall 2015 email: dietmar.pfahl@ut.ee Schedule of Lectures Week 01: Introduction to SE Week 02: Requirements Engineering I Week 03:

More information

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for? Computer Engineering and Networks Overview Discrete Event Systems Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two circuits

More information

MULTIPLE CHOICE QUESTIONS DECISION SCIENCE

MULTIPLE CHOICE QUESTIONS DECISION SCIENCE MULTIPLE CHOICE QUESTIONS DECISION SCIENCE 1. Decision Science approach is a. Multi-disciplinary b. Scientific c. Intuitive 2. For analyzing a problem, decision-makers should study a. Its qualitative aspects

More information

Theoretical Foundations of the UML

Theoretical Foundations of the UML Theoretical Foundations of the UML Lecture 17+18: A Logic for MSCs Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ws-1718/fuml/ 5.

More information

Comp 11 Lectures. Dr. Mike Shah. August 9, Tufts University. Dr. Mike Shah (Tufts University) Comp 11 Lectures August 9, / 34

Comp 11 Lectures. Dr. Mike Shah. August 9, Tufts University. Dr. Mike Shah (Tufts University) Comp 11 Lectures August 9, / 34 Comp 11 Lectures Dr. Mike Shah Tufts University August 9, 2017 Dr. Mike Shah (Tufts University) Comp 11 Lectures August 9, 2017 1 / 34 Please do not distribute or host these slides without prior permission.

More information

Use the Rational Zero Theorem to list all the possible rational zeros of the following polynomials. (1-2) 4 3 2

Use the Rational Zero Theorem to list all the possible rational zeros of the following polynomials. (1-2) 4 3 2 Name: Math 114 Activity 1(Due by EOC Apr. 17) Dear Instructor or Tutor, These problems are designed to let my students show me what they have learned and what they are capable of doing on their own. Please

More information

Intelligent Sound Bubbles. Dragica Kahlina sound artist & musician (

Intelligent Sound Bubbles. Dragica Kahlina sound artist & musician ( Intelligent Sound Bubbles Dragica Kahlina sound artist & musician (www.kahlina.com) About me M u sicia n a n d so u n d d e sig n e r w a s A I co d e r (C + + ) fo r (RT S /R P G -)g a p hysicist Thanks

More information

DO NOT COPY DO NOT COPY

DO NOT COPY DO NOT COPY Drill Problems 3 benches. Another practical book is VHDL for Programmable Logic, by Kevin Skahill of Cypress Semiconductor (Addison-esley, 1996). All of the ABEL and VHDL examples in this chapter and throughout

More information

FACULTY OF SCIENCE ACADEMY OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING OBJECT ORIENTED PROGRAMMING DATE 07/2014 SESSION 8:00-10:00

FACULTY OF SCIENCE ACADEMY OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING OBJECT ORIENTED PROGRAMMING DATE 07/2014 SESSION 8:00-10:00 FACULTY OF SCIENCE ACADEMY OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING MODULE CAMPUS CSC2A10 OBJECT ORIENTED PROGRAMMING AUCKLAND PARK CAMPUS (APK) EXAM JULY 2014 DATE 07/2014 SESSION 8:00-10:00 ASSESOR(S)

More information

BASIC CONCEPTS OF ABSTRACT INTERPRETATION

BASIC CONCEPTS OF ABSTRACT INTERPRETATION BASIC CONCEPTS OF ABSTRACT INTERPRETATION Patrick Cousot École Normale Supérieure 45 rue d Ulm 75230 Paris cedex 05, France Patrick.Cousot@ens.fr Radhia Cousot CNRS & École Polytechnique 91128 Palaiseau

More information

Quantum Functional Programming Language & Its Denotational Semantics

Quantum Functional Programming Language & Its Denotational Semantics Quantum Functional Programming Language & Its Denotational Semantics Ichiro Hasuo Dept. Computer Science University of Tokyo Naohiko Hoshino Research Inst. for Math. Sci. Kyoto University Talk based on:

More information

INTRODUCTION TO HASHING Dr. Thomas Hicks Trinity University. Data Set - SSN's from UTSA Class

INTRODUCTION TO HASHING Dr. Thomas Hicks Trinity University. Data Set - SSN's from UTSA Class Dr. Thomas E. Hicks Data Abstractions Homework - Hashing -1 - INTRODUCTION TO HASHING Dr. Thomas Hicks Trinity University Data Set - SSN's from UTSA Class 467 13 3881 498 66 2055 450 27 3804 456 49 5261

More information

Dynamic Semantics. Dynamic Semantics. Operational Semantics Axiomatic Semantics Denotational Semantic. Operational Semantics

Dynamic Semantics. Dynamic Semantics. Operational Semantics Axiomatic Semantics Denotational Semantic. Operational Semantics Dynamic Semantics Operational Semantics Denotational Semantic Dynamic Semantics Operational Semantics Operational Semantics Describe meaning by executing program on machine Machine can be actual or simulated

More information

Engineered System Design and Integration A semantic domain for modeling cyber-physical systems

Engineered System Design and Integration A semantic domain for modeling cyber-physical systems Engineered System Design and Integration A semantic domain for modeling cyber-physical systems Pieter J. Mosterman The importance of computation Together with theory and experimentation, computational

More information

Semantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr

Semantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr Semantic Equivalences and the Verification of Infinite-State Systems Richard Mayr Department of Computer Science Albert-Ludwigs-University Freiburg Germany Verification of Infinite-State Systems 1 c 2004

More information

Geosciences Data Digitize and Materialize, Standardization Based on Logical Inter- Domain Relationships GeoDMS

Geosciences Data Digitize and Materialize, Standardization Based on Logical Inter- Domain Relationships GeoDMS Geosciences Data Digitize and Materialize, Standardization Based on Logical Inter- Domain Relationships GeoDMS Somayeh Veiseh Iran, Corresponding author: Geological Survey of Iran, Azadi Sq, Meraj St,

More information

The Helicoidal Life Cycle A Tool for Software Development and Enhancement

The Helicoidal Life Cycle A Tool for Software Development and Enhancement The Helicoidal Life Cycle A Tool for Software Development and Enhancement Antonio Carlos Pinto Dias Alves Unidade Gestão de Riscos Banco do Brasil S.A. Rua Senador Dantas, 105, sala 1704 Centro - CEP 20031-201

More information

Entropy as a Measure of Object-Oriented Design Quality

Entropy as a Measure of Object-Oriented Design Quality Entropy as a Measure of Object-Oriented Design Quality Alexander Chatzigeorgiou, George Stephanides Department of Applied Informatics, University of Macedonia, 156 Egnatia Str., 54006 Thessaloniki, Greece

More information

A Better Interface Between Scientists and Data Reduction Software

A Better Interface Between Scientists and Data Reduction Software A Better Interface Between Scientists and Data Reduction Software B. Nikolic Astrophysics Group, Cavendish Laboratory, University of Cambridge http://www.mrao.cam.ac.uk/ bn204/ ALMA Software Development

More information

31 Dec '01 07 Jan '02 14 Jan '02 21 Jan '02 28 Jan '02 M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T W T F S S

31 Dec '01 07 Jan '02 14 Jan '02 21 Jan '02 28 Jan '02 M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T W T F S S ID Task Name Duration 0 7 Month Project Plan Template 158.5 days 1 1 Preproduction 81.5 days 2 1.1 Project Clarification 12.5 days 3 1.1.1 Clarify/Audit Commercial (inc. Marketing) requirements/objectives

More information

A Reconfigurable Quantum Computer

A Reconfigurable Quantum Computer A Reconfigurable Quantum Computer David Moehring CEO, IonQ, Inc. College Park, MD Quantum Computing for Business 4-6 December 2017, Mountain View, CA IonQ Highlights Full Stack Quantum Computing Company

More information

UML. Design Principles.

UML. Design Principles. .. Babes-Bolyai University arthur@cs.ubbcluj.ro November 20, 2018 Overview 1 2 3 Diagrams Unified Modeling Language () - a standardized general-purpose modeling language in the field of object-oriented

More information

Clojure Concurrency Constructs, Part Two. CSCI 5828: Foundations of Software Engineering Lecture 13 10/07/2014

Clojure Concurrency Constructs, Part Two. CSCI 5828: Foundations of Software Engineering Lecture 13 10/07/2014 Clojure Concurrency Constructs, Part Two CSCI 5828: Foundations of Software Engineering Lecture 13 10/07/2014 1 Goals Cover the material presented in Chapter 4, of our concurrency textbook In particular,

More information

Black-box testing TDDD04 Lecture 2

Black-box testing TDDD04 Lecture 2 Black-box testing TDDD04 Lecture 2 Ola Leifler Unit testing Different kinds of unit testing Code inspections Code walkthroughs Black-box testing White-box testing Determines what the inputs are Determines

More information

EECS 579: Logic and Fault Simulation. Simulation

EECS 579: Logic and Fault Simulation. Simulation EECS 579: Logic and Fault Simulation Simulation: Use of computer software models to verify correctness Fault Simulation: Use of simulation for fault analysis and ATPG Circuit description Input data for

More information

Proving Real-time Properties of Embedded Software Systems 0-0

Proving Real-time Properties of Embedded Software Systems 0-0 Proving Real-time Properties of Embedded Software Systems 0-0 Outline of Presentation Introduction and Preliminaries Previous Related Work Held For Operator Sensor Lock System Verified Design for Timing

More information

Integration and Higher Level Testing

Integration and Higher Level Testing Integration and Higher Level Testing Software Testing and Verification Lecture 11 Prepared by Stephen M. Thebaut, Ph.D. University of Florida Context Higher-level testing begins with the integration of

More information

ITI Introduction to Computing II

ITI Introduction to Computing II (with contributions from R. Holte) School of Electrical Engineering and Computer Science University of Ottawa Version of January 11, 2015 Please don t print these lecture notes unless you really need to!

More information

MCS 260 Exam 2 13 November In order to get full credit, you need to show your work.

MCS 260 Exam 2 13 November In order to get full credit, you need to show your work. MCS 260 Exam 2 13 November 2015 Name: Do not start until instructed to do so. In order to get full credit, you need to show your work. You have 50 minutes to complete the exam. Good Luck! Problem 1 /15

More information

Provable Security Proofs and their Interpretation in the Real World

Provable Security Proofs and their Interpretation in the Real World Provable Security Proofs and their Interpretation in the Real World Vikram Singh Abstract This paper analyses provable security proofs, using the EDL signature scheme as its case study, and interprets

More information

Compilers. Lexical analysis. Yannis Smaragdakis, U. Athens (original slides by Sam

Compilers. Lexical analysis. Yannis Smaragdakis, U. Athens (original slides by Sam Compilers Lecture 3 Lexical analysis Yannis Smaragdakis, U. Athens (original slides by Sam Guyer@Tufts) Big picture Source code Front End IR Back End Machine code Errors Front end responsibilities Check

More information

Revisit summer... go to the Fitzwilliam Museum!

Revisit summer... go to the Fitzwilliam Museum! Revisit summer... go to the Fitzwilliam Museum! Faculty of Philosophy Formal Logic Lecture 5 Peter Smith Peter Smith: Formal Logic, Lecture 5 2 Outline Propositional connectives, and the assumption of

More information

System Design: Architectures and Archetypes. Stephen J. Mellor Project Technology, Inc.

System Design: Architectures and Archetypes. Stephen J. Mellor Project Technology, Inc. System Design: Architectures and Archetypes Stephen J. Mellor Project Technology, Inc. http://www.projtech.com Properties Executable UML models Separation of application from architecture Translation according

More information

Deductive Verification

Deductive Verification Deductive Verification Mooly Sagiv Slides from Zvonimir Rakamaric First-Order Logic A formal notation for mathematics, with expressions involving Propositional symbols Predicates Functions and constant

More information

Formal Verification of Mathematical Algorithms

Formal Verification of Mathematical Algorithms Formal Verification of Mathematical Algorithms 1 Formal Verification of Mathematical Algorithms John Harrison Intel Corporation The cost of bugs Formal verification Levels of verification HOL Light Formalizing

More information

Workshop 1a: Software Measurement. Dietmar Pfahl

Workshop 1a: Software Measurement. Dietmar Pfahl Software Economics Fall 2015 Workshop 1a: Software Measurement Dietmar Pfahl (based on slides by Marlon Dumas & Anton Litvinenko) Main Message Software measures can be misleading, so Either you don t use

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering Introduction Philippe Lalanda http://membres- liglab.imag.fr/lalanda/ or Google! Philippe Lalanda 1 Miscellaneous - 1 Organization 9 lectures 10 exercises sets Lectures

More information

Alan Bundy. Automated Reasoning LTL Model Checking

Alan Bundy. Automated Reasoning LTL Model Checking Automated Reasoning LTL Model Checking Alan Bundy Lecture 9, page 1 Introduction So far we have looked at theorem proving Powerful, especially where good sets of rewrite rules or decision procedures have

More information

Factors, Zeros, and Roots

Factors, Zeros, and Roots Factors, Zeros, and Roots Solving polynomials that have a degree greater than those solved in previous courses is going to require the use of skills that were developed when we previously solved quadratics.

More information

Solving Quadratic Equations by Formula

Solving Quadratic Equations by Formula Algebra Unit: 05 Lesson: 0 Complex Numbers All the quadratic equations solved to this point have had two real solutions or roots. In some cases, solutions involved a double root, but there were always

More information

End-of-chapter test Chapter 2 Foundation

End-of-chapter test Chapter 2 Foundation 1 a Match the orbit with the type of satellite. geostationary orbit low Earth orbit (LEO) polar orbit Satellites stay over the same position on Earth all the time. Satellites travel over the North Pole

More information

Logical design of digital systems

Logical design of digital systems 21062017 lectures Summer Semester 2017 Table of content 1 Combinational circuit design 2 Elementary combinatorial circuits for data transmission 3 Memory structures 4 Programmable logic devices 5 Algorithmic

More information

To solve a radical equation, you must take both sides of an equation to a power.

To solve a radical equation, you must take both sides of an equation to a power. Topic 5 1 Radical Equations A radical equation is an equation with at least one radical expression. There are four types we will cover: x 35 3 4x x 1x 7 3 3 3 x 5 x 1 To solve a radical equation, you must

More information

Transformation of a PID Controller for Numerical Accuracy

Transformation of a PID Controller for Numerical Accuracy Replace this file with prentcsmacro.sty for your meeting, or with entcsmacro.sty for your meeting. Both can be found at the ENTCS Macro Home Page. Transformation of a PID Controller for Numerical Accuracy

More information

VERIFICATION OF A LARGE DISCRETE SYSTEM USING ALGEBRAIC METHODS

VERIFICATION OF A LARGE DISCRETE SYSTEM USING ALGEBRAIC METHODS VERIFICATION OF A LARGE DISCRETE SYSTEM USING ALGEBRAIC METHODS Johan Gunnarsson Jonas Plantin Roger Germundsson Department of Electrical Engineering Linköping University S-58 83 Linköping, Sweden Email:

More information

CTL Model Update Implementation Using ANTLR Tools

CTL Model Update Implementation Using ANTLR Tools CTL Model Update Implementation Using ANTLR Tools LAURA FLORENTINA CACOVEAN Department of Computer Science Lucian Blaga University of Sibiu, Faculty of Sciences Str. Dr. Ion Ratiu 5-7, 550012, Sibiu ROMANIA

More information

Proving Security Protocols Correct. Lawrence C. Paulson Computer Laboratory

Proving Security Protocols Correct. Lawrence C. Paulson Computer Laboratory Proving Security Protocols Correct Lawrence C. Paulson Computer Laboratory How Detailed Should a Model Be? too detailed too simple concrete abstract not usable not credible ``proves'' everything ``attacks''

More information

Expressing Dynamics of Mobile Programs by Typing

Expressing Dynamics of Mobile Programs by Typing 5 th Slovakian-Hungarian Joint Symposium on Applied Machine Intelligence and Informatics January 25-26, 2007 Poprad, Slovakia Expressing Dynamics of Mobile Programs by Typing Martin Tomášek Department

More information

Structural Induction

Structural Induction Structural Induction In this lecture we ll extend the applicability of induction to many universes, ones where we can define certain kinds of objects by induction, in addition to proving their properties

More information

ENG202 Statics Lecture 16, Section 7.1

ENG202 Statics Lecture 16, Section 7.1 ENG202 Statics Lecture 16, Section 7.1 Internal Forces Developed in Structural Members - Design of any structural member requires an investigation of the loading acting within the member in order to be

More information

Probabilistic Model Checking and Strategy Synthesis for Robot Navigation

Probabilistic Model Checking and Strategy Synthesis for Robot Navigation Probabilistic Model Checking and Strategy Synthesis for Robot Navigation Dave Parker University of Birmingham (joint work with Bruno Lacerda, Nick Hawes) AIMS CDT, Oxford, May 2015 Overview Probabilistic

More information

ACTIVE VIBRATION CONTROL PROTOTYPING IN ANSYS: A VERIFICATION EXPERIMENT

ACTIVE VIBRATION CONTROL PROTOTYPING IN ANSYS: A VERIFICATION EXPERIMENT ACTIVE VIBRATION CONTROL PROTOTYPING IN ANSYS: A VERIFICATION EXPERIMENT Ing. Gergely TAKÁCS, PhD.* * Institute of Automation, Measurement and Applied Informatics Faculty of Mechanical Engineering Slovak

More information

AN OBJECT-ORIENTED DATA MODEL FOR DIGITAL CARTOGRAPHIC OBJECT

AN OBJECT-ORIENTED DATA MODEL FOR DIGITAL CARTOGRAPHIC OBJECT AN OBJECT-ORIENTED DATA MODEL FOR DIGITAL CARTOGRAPHIC OBJECT Chen Yijin China University of Mining Technology (Beijing) 100083 Email :Y.J.Chen@263.net GuBin 1521,No.15 XinXingDongXiang XiZhiMenWai Beijing

More information

Lecture Notes on Programs with Arrays

Lecture Notes on Programs with Arrays 15-414: Bug Catching: Automated Program Verification Lecture Notes on Programs with Arrays Matt Fredrikson Ruben Martins Carnegie Mellon University Lecture 6 1 Introduction The previous lecture focused

More information

More About Methods. Hsuan-Tien Lin. Deptartment of CSIE, NTU. OOP Class, March 8-9, 2010

More About Methods. Hsuan-Tien Lin. Deptartment of CSIE, NTU. OOP Class, March 8-9, 2010 More About Methods Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 8-9, 2010 H.-T. Lin (NTU CSIE) More About Methods OOP 03/08-09/2010 0 / 24 Methods: the Basic Method (1/2, Callee s View) 1 p

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Today s class will be an introduction

More information

Inverse problems. High-order optimization and parallel computing. Lecture 7

Inverse problems. High-order optimization and parallel computing. Lecture 7 Inverse problems High-order optimization and parallel computing Nikolai Piskunov 2014 Lecture 7 Non-linear least square fit The (conjugate) gradient search has one important problem which often occurs

More information

COSE312: Compilers. Lecture 17 Intermediate Representation (2)

COSE312: Compilers. Lecture 17 Intermediate Representation (2) COSE312: Compilers Lecture 17 Intermediate Representation (2) Hakjoo Oh 2017 Spring Hakjoo Oh COSE312 2017 Spring, Lecture 17 May 31, 2017 1 / 19 Common Intermediate Representations Three-address code

More information

GCE. Mathematics. Mark Scheme for June Advanced Subsidiary GCE Unit 4722: Core Mathematics 2. Oxford Cambridge and RSA Examinations

GCE. Mathematics. Mark Scheme for June Advanced Subsidiary GCE Unit 4722: Core Mathematics 2. Oxford Cambridge and RSA Examinations GCE Mathematics Advanced Subsidiary GCE Unit 47: Core Mathematics Mark Scheme for June 011 Oxford Cambridge and RSA Examinations OCR (Oxford Cambridge and RSA) is a leading UK awarding body, providing

More information

Chapter Six. Polynomials. Properties of Exponents Algebraic Expressions Addition, Subtraction, and Multiplication Factoring Solving by Factoring

Chapter Six. Polynomials. Properties of Exponents Algebraic Expressions Addition, Subtraction, and Multiplication Factoring Solving by Factoring Chapter Six Polynomials Properties of Exponents Algebraic Expressions Addition, Subtraction, and Multiplication Factoring Solving by Factoring Properties of Exponents The properties below form the basis

More information

Agile modeling for INF5150

Agile modeling for INF5150 Agile modeling for INF5150 Version 071012 11-Oct-07 INF5150 Unassailable IT-systems 1 Tools for INF5150 Autumn 2007 We are going to keep to the safe and already proven technology this time... 11-Oct-07

More information

Lecture Notes 20: Zero-Knowledge Proofs

Lecture Notes 20: Zero-Knowledge Proofs CS 127/CSCI E-127: Introduction to Cryptography Prof. Salil Vadhan Fall 2013 Lecture Notes 20: Zero-Knowledge Proofs Reading. Katz-Lindell Ÿ14.6.0-14.6.4,14.7 1 Interactive Proofs Motivation: how can parties

More information

A quadratic expression is a mathematical expression that can be written in the form 2

A quadratic expression is a mathematical expression that can be written in the form 2 118 CHAPTER Algebra.6 FACTORING AND THE QUADRATIC EQUATION Textbook Reference Section 5. CLAST OBJECTIVES Factor a quadratic expression Find the roots of a quadratic equation A quadratic expression is

More information

Web GIS: Architectural Patterns and Practices. Shannon Kalisky Philip Heede

Web GIS: Architectural Patterns and Practices. Shannon Kalisky Philip Heede Web GIS: Architectural Patterns and Practices Shannon Kalisky Philip Heede Web GIS Transformation of the ArcGIS Platform Desktop Apps Server GIS Web Maps Web Scenes Layers Web GIS Transformation of the

More information

M. Vable Mechanics of Materials: Chapter 5. Torsion of Shafts

M. Vable Mechanics of Materials: Chapter 5. Torsion of Shafts Torsion of Shafts Shafts are structural members with length significantly greater than the largest cross-sectional dimension used in transmitting torque from one plane to another. Learning objectives Understand

More information

CA Compiler Construction

CA Compiler Construction CA4003 - Compiler Construction Bottom Up Parsing David Sinclair Bottom Up Parsing LL(1) parsers have enjoyed a bit of a revival thanks to JavaCC. LL(k) parsers must predict which production rule to use

More information

Information Flow Inference for ML

Information Flow Inference for ML Information Flow Inference for ML Vincent Simonet INRIA Rocquencourt Projet Cristal MIMOSA September 27, 2001 Information flow account number bank applet order vendor account H order L bank H vendor L

More information

What Every Programmer Should Know About Floating-Point Arithmetic DRAFT. Last updated: November 3, Abstract

What Every Programmer Should Know About Floating-Point Arithmetic DRAFT. Last updated: November 3, Abstract What Every Programmer Should Know About Floating-Point Arithmetic Last updated: November 3, 2014 Abstract The article provides simple answers to the common recurring questions of novice programmers about

More information