Project 1 Part II: Metaproduct Primes
|
|
- Moses Adams
- 5 years ago
- Views:
Transcription
1 Project Part II: Metaproduct Primes What ou know Basic BDD data structure and JAVA implementation A little bit about these things called metaproducts What ou don t know All the tricks with metaproducts Using these to do Prime Implicants R. Rutenbar 2, CMU 8-76, Fall 2 Copright Notice Rob A. Rutenbar, 2 All rights reserved. You ma not make copies of this material in an form without m express permission. R. Rutenbar 2, CMU 8-76, Fall 2 2 Page
2 About Metaproducts Notation was created to support applications where we need to preserve the structure of things like SOP expressions ie, if ou reall WANT to write x + x and ou want to represent and manipulate it as a BDD, what to do? Metaproduct notation Replace each variable x with a pair (, ) If ou see x in a product, then ou get ()() in metaproduct If ou see x in a product, then ou get ()( ) in metaproduct If ou don t see an x or x at all, then ou get ( ) in metaproduct In English is the occurrence variable -> == sas x is here, == sas no x is the sign variable -> == sas x is positive, == negative R. Rutenbar 2, CMU 8-76, Fall 2 3 Metaproduct Example Suppose F(x,) = x + x This is reall just == x, of course Its BDD would be simpl As a metaproduct Assume var ordering was x < Then new ordering is x < < < < < x becomes ()()( ) x becomes ()()()( ) x R. Rutenbar 2, CMU 8-76, Fall 2 4 Page 2
3 Page 3 Metaproduct Example You interpret this b looking at satisfing paths to node There are 2 paths from root to, each makes a product term x is here x is pos is not here. Result: x x is here x is pos is here... is neg... Result: x Put the final products together for final answer: x + x R. Rutenbar 2, CMU 8-76, Fall 2 5 Metaproduct Example What happens if a variable is not present? We alread saw this, but its worth noting In F(x,) = x + x, consider x term There s no in there, but we still have to deal with Rule is: if there s no variable in there, ou still have to include the occurrence variables for the missing original vars, but ou include them in the negative polarit to note their absence So, term x becomes ()()( ) Means no vars in here If this was F(x,,,w) =x, what would happen? We d get ()()( )(r )(rw ) R. Rutenbar 2, CMU 8-76, Fall 2 6
4 Metaproduct Primes Turns out ou can represent Prime Implicants with metaproduct notation x w x w These are all Primes biggest product terms ou can circle in a Kmap for our function These are NOT all Primes not all biggest product terms ou can Circle in this Kmap R. Rutenbar 2, CMU 8-76, Fall 2 7 Metaproduct Primes ike with Boolean functions, problem is SIZE A function can have man man primes wa too man enumerate one b one This is wh representing them with something like a BDD is attractive, since its good at compressing Boolean functions But this is also wh we need a special notation, since we DON T want the BDD to CANGE our function to its canonical form We need to represent it in some SOP form Biq question: how do we find Primes using metaproducts Of course, it s gotta be something recursive, right? R. Rutenbar 2, CMU 8-76, Fall 2 8 Page 4
5 Page 5 Metaproduct Primes There s another Shannon-stle recursive decomposition You start with a BDD in our original variables You end up with a BDD in the (occurrence, sign) metaproduct variables Final BDD represents, as SOP form, A the primes Basic decomposition et P( BDD root of F) = metaproduct BDD for all PRIMES in function F P( x ) = P( * ) P() * P( *) P() * P( *) R. Rutenbar 2, CMU 8-76, Fall 2 9 Metaproduct Primes wh does that work? Roughl speaking this is just the mes check for how to reassemble primes when the get split up during a Shannon decomposition x f(x,,) = x + = 2 primes = f + f = (x + ) + () x f(x,,) = x = prime = f + f = (x) + (x) x x When we factored on, we chopped up the prime like this x x When we factored on, we chopped up the prime like this R. Rutenbar 2, CMU 8-76, Fall 2
6 Metaproduct Primes Reading the decomposition P( x ) = P( * ) If there s no x vars, then get primes in * P() * P( *) If neg x var, get primes in that are NOT in * P() * P( *) If pos x var, get primes in that are NOT in * R. Rutenbar 2, CMU 8-76, Fall 2 Metaproduct Primes et s be a little more careful on the details of BDDs and ops Assumes ou have AND and NOT (ie,! ) on BDDs Assumes P( ) calculated just like ITE, as a top-down recursion Assume var order is fixed: for vas x,,, its: x < < < < <. P( x ) = P( AND[, ] ) AND[ P( ),!P( AND[, ] )] AND[ P( ),!P( AND[, ] )] R. Rutenbar 2, CMU 8-76, Fall 2 2 Page 6
7 Metaproduct Primes: Termination So we know the recursion is: P( x ) = P( AND[, ] ) AND[ P( ),!P( AND[, ] ) AND[ P( ),!P( AND[, ] ) next question: what are the termination conditions for P( )? So, when can we quit, and return a known BDD node answer? Ea case: P( ) = arder case: P( ) = a little mes R. Rutenbar 2, CMU 8-76, Fall 2 3 Metaproduct Primes: Termination Suppose vars are: x,,,w, and we have this recursion P( x ) = P( ) This is just P( ) Intuition This is the product of complements of all occurrence vars later in the order, ie, after In this case: ( )(r )(rw ) = Something that needs more recursion happens here P() means ou re done nothing more at all this prime term P() means ou re done but remember that these vars are absent r rw R. Rutenbar 2, CMU 8-76, Fall 2 4 Page 7
8 Page 8 Primes Example x f(x,,) = x + = 2 primes Appl recursion at root of f() x Ordina BDD with var order: x < < P( x ) = P( ) and note: x = = R. Rutenbar 2, CMU 8-76, Fall 2 5 Primes Example Appling recursion at root of f() P( x ) = P( AND[, ] ) AND[ P( ),!P( AND[, ] )] AND[ P( ),!P( AND[, ] )] R. Rutenbar 2, CMU 8-76, Fall 2 6
9 Page 9 Primes Example Do the obvious simplifications now (just to simplif for this manual example) P( x ) = P( ) AND[ P( ),!P( ) ] This was just P(foo) *!P(foo) = R. Rutenbar 2, CMU 8-76, Fall 2 7 OK, we need to do this one next P( ) = P( AND[, ] ) AND[ P( ),!P( AND[, ] )] AND[ P( ),!P( AND[, ] )] R. Rutenbar 2, CMU 8-76, Fall 2 8
10 Page Again, do obvious simplifications (just for this manual ex) P( ) = P( ) = P( ) P() * stuff = R. Rutenbar 2, CMU 8-76, Fall 2 9 We have to do this one next and its ea P( ) = r P( AND[, ] ) s This is P() = AND[ P( ),!P( AND[, ] )] This is P()* stuff = AND[ P( ),!P( AND[, ] )] This is P()*!P() = P()* = P() R. Rutenbar 2, CMU 8-76, Fall 2 2
11 Page We have to do this one next and its ea P( ) = r s This is P() = product of complements of the vars later in the order than s. Since s is the AST var in the order, the rule is: this is just R. Rutenbar 2, CMU 8-76, Fall 2 2 Return results up recursive call tree P( ) = = P( ) r s Note I m leaving in all the separate and nodes just to simplif the drawing it s a REA BDD, there s onl a single and a single R. Rutenbar 2, CMU 8-76, Fall 2 22
12 Page 2 Return results up recursive call tree P( x ) = P( ) = r s AND[ P( ),!P( )] AND[ P( ), NOT( )] r s R. Rutenbar 2, CMU 8-76, Fall 2 23 This one is next to recurse on AND[ P( ), NOT( )] r s Since we know P() = product of complements of vars below in the order, this is supposed to be: ( )(r ), so we get AND[, NOT( ) ] r r s which is just ordina BDD ops R. Rutenbar 2, CMU 8-76, Fall 2 24
13 Page 3 BDD ops give this AND[, NOT( ) ] r r s = r r s R. Rutenbar 2, CMU 8-76, Fall 2 25 Return results up recursive call tree P( ) = x r s AND[ P( ), NOT( )] r s = r s r r s R. Rutenbar 2, CMU 8-76, Fall 2 26
14 Page 4..and, that s the Final Metaproduct for Prime( ) ook for paths from root to x is not here is here is negative is here is positive r s r r This prime is s R. Rutenbar 2, CMU 8-76, Fall 2 27 Final Primes More paths x is here r s r r s x is negative is not here can ignore sign is not here can ignore sign This prime is x R. Rutenbar 2, CMU 8-76, Fall 2 28
15 Page 5 Final Primes he, there s another one? x is here An unfortunate fact about metaproducts: the can be redundant about primes. You don t get the wrong ones but ou can get right ones several times. r s r r s x is negative is not here can ignore sign is not here This prime is also x R. Rutenbar 2, CMU 8-76, Fall 2 29 Metaproduct Primes So what did we do? x f(x,,) Ordina BDD with var order: x < < x Primes = paths from root to. Can be redundant. x Primes = {x, ) r BDD for Primes( f ) in metaproduct form s r r s R. Rutenbar 2, CMU 8-76, Fall 2 3
16 back to 8-76 Project Part 2 What do we want? We want ou to add P( BDD for function f) as an operator to our JAVA BDD package Do it exactl like we showed here Just like ITE: ou descend the starting BDD for f, and ou recursivel trace out the BDD for P(f) Assume ou have all the vars defined in the right initial order. This means if the real vars are x,, YOU have x,,,,, in order You have 2 basic goals To be able to transform a BDD for function f into Prime(f) To print out some interesting info about these primes R. Rutenbar 2, CMU 8-76, Fall 2 3 Prime( ) Details Things to be careful about Before doing anthing, ou probabl want to build the function: ( )( )(r ) (rlast ) for A our vars. And make an arra of pointers to the nodes, so that when ou need P() = product of complemented occurrence nodes below me ou can just look it up You still need to call FindOrCreateNode()on the 2 new nodes ou make. You want to build and its children first, call FindOrCreatNode(), then finish the recursion on, then call FindOrCreatNode(). Do ou want to do something like a different OPS table for the Prime computation? (It s not required but think about it) You will want to write a printprime routine that walks the paths to the node, and prints out sensible product terms. DO NOT wor about the redundanc issue not our problem. You also want to build a numprimes routine that just prints out the number of paths to the node. Think about it ou don t have to walk them all to do this, it s a ve simple recursion if ou know numprimes(hichild) and numprimes(lochild), and numprimes()= and numprimes()= R. Rutenbar 2, CMU 8-76, Fall 2 32 Page 6
17 Metaproduct Primes: Summa Interesting, sort of funk BDD application Twists the usual interpretation of canonical BDD form around a lot Works fine, a bit arcane (This is a simplification of how people reall do it. There are a bunch of other optimiations to get rid of those redundancies that make it a lot faster. Not worth the grief to go thru them all the violate a lot of BDD rules.) For Project Implement Prime( f ) ook on the /afs/ece/class/ee76/proj directo for more details, and for some info about benchmarks to run Ask TA and Prof questions if there are an issues at all on this one R. Rutenbar 2, CMU 8-76, Fall 2 33 Page 7
CMU Fall VLSI CAD
CMU Fall 01 18-760 VLSI CAD Project 1: Implementation of a Basic BDD Package. (Part I) [120 pts] Out: Thu Sep 20, Due: Thu Oct 5 in class. 1. Overview The goal is to write a Java program to implement the
More informationImplicit Differentiation - the basics
x x 6 Implicit Differentiation - the basics Implicit differentiation is the name for the method of differentiation that we use when we have not explicitl solved for in terms of x (that means we did not
More informationIt s Not Complex Just Its Solutions Are Complex!
It s Not Comple Just Its Solutions Are Comple! Solving Quadratics with Comple Solutions 15.5 Learning Goals In this lesson, ou will: Calculate comple roots of quadratic equations and comple zeros of quadratic
More informationStudent Page. Algebra/ Day #4 90 Minute Class Functions, Patterns and X-Y Tables
Student Page Algebra/ Da #4 90 Minute Class Functions, Patterns and X-Y Tables Definition: A relation is an set of ordered pairs Ex: # {(,), (-7,6), (-,4)} # { (0,8), (-, ), (0,6)} Definition: A function
More informationIntermediate Algebra. Gregg Waterman Oregon Institute of Technology
Intermediate Algebra Gregg Waterman Oregon Institute of Technolog c 2017 Gregg Waterman This work is licensed under the Creative Commons Attribution 4.0 International license. The essence of the license
More informationM O T I O N A N D D R A W I N G
2 M O T I O N A N D D R A W I N G Now that ou know our wa around the interface, ou re read to use more of Scratch s programming tools. In this chapter, ou ll do the following: Eplore Scratch s motion and
More informationWeek - 04 Lecture - 01 Merge Sort. (Refer Slide Time: 00:02)
Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 04 Lecture - 01 Merge Sort (Refer
More informationECE 5775 (Fall 17) High-Level Digital Design Automation. Binary Decision Diagrams Static Timing Analysis
ECE 5775 (Fall 17) High-Level Digital Design Automation Binary Decision Diagrams Static Timing Analysis Announcements Start early on Lab 1 (CORDIC design) Fixed-point design should not have usage of DSP48s
More informationMotivation. CS389L: Automated Logical Reasoning. Lecture 5: Binary Decision Diagrams. Historical Context. Binary Decision Trees
Motivation CS389L: Automated Logical Reasoning Lecture 5: Binary Decision Diagrams Işıl Dillig Previous lectures: How to determine satisfiability of propositional formulas Sometimes need to efficiently
More information(Lec 14) Placement & Partitioning: Part III
Page (Lec ) Placement & Partitioning: Part III What you know That there are big placement styles: iterative, recursive, direct Placement via iterative improvement using simulated annealing Recursive-style
More informationy = f(x) x (x, f(x)) f(x) g(x) = f(x) + 2 (x, g(x)) 0 (0, 1) 1 3 (0, 3) 2 (2, 3) 3 5 (2, 5) 4 (4, 3) 3 5 (4, 5) 5 (5, 5) 5 7 (5, 7)
0 Relations and Functions.7 Transformations In this section, we stud how the graphs of functions change, or transform, when certain specialized modifications are made to their formulas. The transformations
More informationDetermining the 2d transformation that brings one image into alignment (registers it) with another. And
Last two lectures: Representing an image as a weighted combination of other images. Toda: A different kind of coordinate sstem change. Solving the biggest problem in using eigenfaces? Toda Recognition
More informationIntroduction to Programming in C Department of Computer Science and Engineering. Lecture No. #34. Function with pointer Argument
Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #34 Function with pointer Argument (Refer Slide Time: 00:05) So, here is the stuff that we have seen about pointers.
More informationPre-Algebra Notes Unit 8: Graphs and Functions
Pre-Algebra Notes Unit 8: Graphs and Functions The Coordinate Plane A coordinate plane is formed b the intersection of a horizontal number line called the -ais and a vertical number line called the -ais.
More informationCprE 281: Digital Logic
CprE 28: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Minimization CprE 28: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev Administrative
More informationOptional: Building a processor from scratch
Optional: Building a processor from scratch In this assignment we are going build a computer processor from the ground up, starting with transistors, and ending with a small but powerful processor. The
More informationSlide Set 5. for ENEL 353 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary
Slide Set 5 for ENEL 353 Fall 207 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Fall Term, 207 SN s ENEL 353 Fall 207 Slide Set 5 slide
More informationCS 267: Automated Verification. Lecture 6: Binary Decision Diagrams. Instructor: Tevfik Bultan
CS 267: Automated Verification Lecture 6: Binar Decision Diagrams Instructor: evfik Bultan Binar Decision Diagrams (BDDs) [Brant 86] Reduced Ordered Binar Decision Diagrams (BDDs) An efficient data structure
More informationCombinational Logic Circuits Part III -Theoretical Foundations
Combinational Logic Circuits Part III -Theoretical Foundations Overview Simplifying Boolean Functions Algebraic Manipulation Karnaugh Map Manipulation (simplifying functions of 2, 3, 4 variables) Systematic
More information20 Calculus and Structures
0 Calculus and Structures CHAPTER FUNCTIONS Calculus and Structures Copright LESSON FUNCTIONS. FUNCTIONS A function f is a relationship between an input and an output and a set of instructions as to how
More informationLINEAR PROGRAMMING. Straight line graphs LESSON
LINEAR PROGRAMMING Traditionall we appl our knowledge of Linear Programming to help us solve real world problems (which is referred to as modelling). Linear Programming is often linked to the field of
More informationMathematics Stage 5 PAS5.1.2 Coordinate geometry
Mathematics Stage PAS.. Coordinate geometr Part Graphing lines Acknowledgments This publication is copright New South Wales Department of Education and Training (DET), however it ma contain material from
More informationMITOCW watch?v=4dj1oguwtem
MITOCW watch?v=4dj1oguwtem PROFESSOR: So it's time to examine uncountable sets. And that's what we're going to do in this segment. So Cantor's question was, are all sets the same size? And he gives a definitive
More informationCS201 - Assignment 8 Due: Wednesday April 23, at the beginning of class
CS201 - Assignment 8 Due: Wednesda April 23, at the beginning of class In this assignment we will pla a guessing game (somewhat similar to 20 questions), with the computer doing the guessing and learning
More informationIntroduction to Homogeneous Transformations & Robot Kinematics
Introduction to Homogeneous Transformations & Robot Kinematics Jennifer Ka Rowan Universit Computer Science Department. Drawing Dimensional Frames in 2 Dimensions We will be working in -D coordinates,
More informationTransformations of Functions. 1. Shifting, reflecting, and stretching graphs Symmetry of functions and equations
Chapter Transformations of Functions TOPICS.5.. Shifting, reflecting, and stretching graphs Smmetr of functions and equations TOPIC Horizontal Shifting/ Translation Horizontal Shifting/ Translation Shifting,
More informationProgramming in C++ Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Programming in C++ Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 43 Dynamic Binding (Polymorphism): Part III Welcome to Module
More informationLecture Notes on Binary Decision Diagrams
Lecture Notes on Binary Decision Diagrams 15-122: Principles of Imperative Computation William Lovas Notes by Frank Pfenning Lecture 25 April 21, 2011 1 Introduction In this lecture we revisit the important
More informationPROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between
MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query
More informationBinary Trees Case-studies
Carlos Moreno cmoreno @ uwaterloo.ca EIT-4103 https://ece.uwaterloo.ca/~cmoreno/ece250 Standard reminder to set phones to silent/vibrate mode, please! Today's class: Binary Trees Case-studies We'll look
More informationCHAPTER 9: Quadratic Equations and Functions
Notes # CHAPTER : Quadratic Equations and Functions -: Exploring Quadratic Graphs A. Intro to Graphs of Quadratic Equations: = ax + bx + c A is a function that can be written in the form = ax + bx + c
More informationLESSON 3.1 INTRODUCTION TO GRAPHING
LESSON 3.1 INTRODUCTION TO GRAPHING LESSON 3.1 INTRODUCTION TO GRAPHING 137 OVERVIEW Here s what ou ll learn in this lesson: Plotting Points a. The -plane b. The -ais and -ais c. The origin d. Ordered
More informationWeek 3. Topic 5 Asymptotes
Week 3 Topic 5 Asmptotes Week 3 Topic 5 Asmptotes Introduction One of the strangest features of a graph is an asmptote. The come in three flavors: vertical, horizontal, and slant (also called oblique).
More informationSlides for Lecture 15
Slides for Lecture 5 ENEL 353: Digital Circuits Fall 203 Term Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary October, 203 ENEL 353 F3 Section
More informationUnit 4: Formal Verification
Course contents Unit 4: Formal Verification Logic synthesis basics Binary-decision diagram (BDD) Verification Logic optimization Technology mapping Readings Chapter 11 Unit 4 1 Logic Synthesis & Verification
More informationLesson 12: Sine 5 = 15 3
Lesson 12: Sine How did ou do on that last worksheet? Is finding the opposite side and adjacent side of an angle super-duper eas for ou now? Good, now I can show ou wh I wanted ou to learn that first.
More informationTopic 2 Transformations of Functions
Week Topic Transformations of Functions Week Topic Transformations of Functions This topic can be a little trick, especiall when one problem has several transformations. We re going to work through each
More informationRobotics Prof. Dilip Kumar Pratihar Department of Mechanical Engineering Indian Institute of Technology, Kharagpur
Robotics Prof. Dilip Kumar Pratihar Department of Mechanical Engineering Indian Institute of Technology, Kharagpur Lecture 03 Introduction to Robot and Robotics (Contd.) (Refer Slide Time: 00:34) Now,
More informationUnate Recursive Complement Algorithm
Unate Recursive Complement Algorithm Out: March 28 th, 2016; Due: April 10 th, 2016 I. Motivation 1. To give you experience in implementing the Unate Recursive Paradigm (URP). 2. To show you an important
More informationSEARCH BASICS. Locate the handout, Assignment for lesson 12, for this search basics tutorial. Questions in red are those you ll answer on the handout.
SEARCH BASICS Locate the handout, Assignment for lesson 12, for this search basics tutorial. Questions in red are those you ll answer on the handout. LIBRARY CATALOG BASICS Library Catalog: a database
More informationBinary Decision Diagrams (BDD)
Binary Decision Diagrams (BDD) Contents Motivation for Decision diagrams Binary Decision Diagrams ROBDD Effect of Variable Ordering on BDD size BDD operations Encoding state machines Reachability Analysis
More information(Refer Slide Time 6:48)
Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Lecture - 8 Karnaugh Map Minimization using Maxterms We have been taking about
More informationCOMP 410 Lecture 1. Kyle Dewey
COMP 410 Lecture 1 Kyle Dewey About Me I research automated testing techniques and their intersection with CS education My dissertation used logic programming extensively This is my second semester at
More informationFigure 4.1: The evolution of a rooted tree.
106 CHAPTER 4. INDUCTION, RECURSION AND RECURRENCES 4.6 Rooted Trees 4.6.1 The idea of a rooted tree We talked about how a tree diagram helps us visualize merge sort or other divide and conquer algorithms.
More informationOverview. 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
More information(Refer Slide Time 3:31)
Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Lecture - 5 Logic Simplification In the last lecture we talked about logic functions
More informationWednesday, February 19, 2014
Wednesda, Februar 19, 2014 Topics for toda Solutions to HW #2 Topics for Eam #1 Chapter 6: Mapping High-level to assembl-level The Pep/8 run-time stack Stack-relative addressing (,s) SP manipulation Stack
More informationCS 161 Computer Security
Wagner Spring 2014 CS 161 Computer Security 1/27 Reasoning About Code Often functions make certain assumptions about their arguments, and it is the caller s responsibility to make sure those assumptions
More informationName Class Date. subtract 3 from each side. w 5z z 5 2 w p - 9 = = 15 + k = 10m. 10. n =
Reteaching Solving Equations To solve an equation that contains a variable, find all of the values of the variable that make the equation true. Use the equalit properties of real numbers and inverse operations
More informationType Checking and Type Equality
Type Checking and Type Equality Type systems are the biggest point of variation across programming languages. Even languages that look similar are often greatly different when it comes to their type systems.
More informationMonday, September 28, 2015
Monda, September 28, 2015 Topics for toda Chapter 6: Mapping High-level to assembl-level The Pep/8 run-time stack (6.1) Stack-relative addressing (,s) SP manipulation Stack as scratch space Global variables
More informationScan Conversion- Polygons
Scan Conversion- olgons Flood Fill Algorithm Chapter 9 Scan Conversion (part ) Drawing olgons on Raster Displa Input polgon with rasterized edges = (x,) point inside Goal: Fill interior with specified
More informationBias-Variance Decomposition Error Estimators
Bias-Variance Decomposition Error Estimators Cross-Validation Bias-Variance tradeoff Intuition Model too simple does not fit the data well a biased solution. Model too comple small changes to the data,
More information1. Fill in the entries in the truth table below to specify the logic function described by the expression, AB AC A B C Z
CS W3827 05S Solutions for Midterm Exam 3/3/05. Fill in the entries in the truth table below to specify the logic function described by the expression, AB AC A B C Z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2.
More informationECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017
ECE 550D Fundamentals of Computer Systems and Engineering Fall 2017 Combinational Logic Prof. John Board Duke University Slides are derived from work by Profs. Tyler Bletsch and Andrew Hilton (Duke) Last
More informationECE 242 Data Structures and Algorithms. Trees IV. Lecture 21. Prof.
ECE 22 Data Structures and Algorithms http://www.ecs.umass.edu/~polizzi/teaching/ece22/ Trees IV Lecture 2 Prof. Eric Polizzi Summary previous lectures Implementations BST 5 5 7 null 8 null null 7 null
More informationBias-Variance Decomposition Error Estimators Cross-Validation
Bias-Variance Decomposition Error Estimators Cross-Validation Bias-Variance tradeoff Intuition Model too simple does not fit the data well a biased solution. Model too comple small changes to the data,
More informationBinary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University
Binary Decision Diagrams (BDDs) Pingqiang Zhou ShanghaiTech University Computational Boolean Algera Representations Applying unate recursive paradigm (URP) in solving tautology is a great warm up example.
More informationData Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi.
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 18 Tries Today we are going to be talking about another data
More informationSimple example. Analysis of programs with pointers. Program model. Points-to relation
Simple eample Analsis of programs with pointers := 5 ptr := & *ptr := 9 := program S1 S2 S3 S4 What are the defs and uses of in this program? Problem: just looking at variable names will not give ou the
More informationImplicit differentiation
Roberto s Notes on Differential Calculus Chapter 4: Basic differentiation rules Section 5 Implicit differentiation What ou need to know alread: Basic rules of differentiation, including the chain rule.
More informationProject 1 Balanced binary
CMSC262 DS/Alg Applied Blaheta Project 1 Balanced binary Due: 7 September 2017 You saw basic binary search trees in 162, and may remember that their weakness is that in the worst case they behave like
More informationChapter 2. Boolean Expressions:
Chapter 2 Boolean Expressions: A Boolean expression or a function is an expression which consists of binary variables joined by the Boolean connectives AND and OR along with NOT operation. Any Boolean
More information2009 Haskell January Test Binary Decision Diagrams
009 Haskell January est Binary Decision Diagrams his test comprises four parts and the maximum mark is 5. Parts I, II and III are worth of the 5 marks available. he 009 Haskell Programming Prize will be
More informationArithmetic Processing
CS/EE 5830/6830 VLSI ARCHITECTURE Chapter 1 Basic Number Representations and Arithmetic Algorithms Arithmetic Processing AP = (operands, operation, results, conditions, singularities) Operands are: Set
More informationSoftware Testing Prof. Meenakshi D Souza Department of Computer Science and Engineering International Institute of Information Technology, Bangalore
Software Testing Prof. Meenakshi D Souza Department of Computer Science and Engineering International Institute of Information Technology, Bangalore Lecture 04 Software Test Automation: JUnit as an example
More informationRational Functions with Removable Discontinuities
Rational Functions with Removable Discontinuities 1. a) Simplif the rational epression and state an values of where the epression is b) Using the simplified epression in part (a), predict the shape for
More informationNotes on Non-Chronologic Backtracking, Implication Graphs, and Learning
Notes on Non-Chronologic Backtracking, Implication Graphs, and Learning Alan J. Hu for CpSc 5 Univ. of British Columbia 00 February 9 These are supplementary notes on these aspects of a modern DPLL-style
More informationCMSC 425: Lecture 10 Basics of Skeletal Animation and Kinematics
: Lecture Basics of Skeletal Animation and Kinematics Reading: Chapt of Gregor, Game Engine Architecture. The material on kinematics is a simplification of similar concepts developed in the field of robotics,
More informationFile System Structure. Kevin Webb Swarthmore College March 29, 2018
File System Structure Kevin Webb Swarthmore College March 29, 2018 Today s Goals Characterizing disks and storage media File system: adding order and structure to storage FS abstractions (files, directories,
More informationCS357 Lecture: BDD basics. David Dill
CS357 Lecture: BDD basics David Dill BDDs (Boolean/binary decision diagrams) BDDs are a very successful representation for Boolean functions. A BDD represents a Boolean function on variables x, x 2,...
More informationCSE 12 Abstract Syntax Trees
CSE 12 Abstract Syntax Trees Compilers and Interpreters Parse Trees and Abstract Syntax Trees (AST's) Creating and Evaluating AST's The Table ADT and Symbol Tables 16 Using Algorithms and Data Structures
More informationLab 3, Tutorial 1 Comp 412
COMP 412 FALL 2018 Lab 3, Tutorial 1 Comp 412 source code IR IR Front End Optimizer Back End target code Copyright 2018, Keith D. Cooper, Linda Torczon & Zoran Budimlić, all rights reserved. Students enrolled
More informationLossless Compression Algorithms
Multimedia Data Compression Part I Chapter 7 Lossless Compression Algorithms 1 Chapter 7 Lossless Compression Algorithms 1. Introduction 2. Basics of Information Theory 3. Lossless Compression Algorithms
More informationIntroduction to Homogeneous Transformations & Robot Kinematics
Introduction to Homogeneous Transformations & Robot Kinematics Jennifer Ka, Rowan Universit Computer Science Department Januar 25. Drawing Dimensional Frames in 2 Dimensions We will be working in -D coordinates,
More information/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Priority Queues / Heaps Date: 9/27/17
01.433/33 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Priority Queues / Heaps Date: 9/2/1.1 Introduction In this lecture we ll talk about a useful abstraction, priority queues, which are
More informationUnit 4 Trigonometry. Study Notes 1 Right Triangle Trigonometry (Section 8.1)
Unit 4 Trigonometr Stud Notes 1 Right Triangle Trigonometr (Section 8.1) Objective: Evaluate trigonometric functions of acute angles. Use a calculator to evaluate trigonometric functions. Use trigonometric
More informationturn counterclockwise from the positive x-axis. However, we could equally well get to this point by a 3 4 turn clockwise, giving (r, θ) = (1, 3π 2
Math 133 Polar Coordinates Stewart 10.3/I,II Points in polar coordinates. The first and greatest achievement of modern mathematics was Descartes description of geometric objects b numbers, using a sstem
More informationlecture notes September 2, How to sort?
.30 lecture notes September 2, 203 How to sort? Lecturer: Michel Goemans The task of sorting. Setup Suppose we have n objects that we need to sort according to some ordering. These could be integers or
More informationCS2630: Computer Organization Homework 1 Bits, bytes, and memory organization Due January 25, 2017, 11:59pm
CS2630: Computer Organization Homework 1 Bits, bytes, and memory organization Due January 25, 2017, 11:59pm Instructions: Show your work. Correct answers with no work will not receive full credit. Whether
More informationBoolean Algebra & Digital Logic
Boolean Algebra & Digital Logic Boolean algebra was developed by the Englishman George Boole, who published the basic principles in the 1854 treatise An Investigation of the Laws of Thought on Which to
More informationIntro. Scheme Basics. scm> 5 5. scm>
Intro Let s take some time to talk about LISP. It stands for LISt Processing a way of coding using only lists! It sounds pretty radical, and it is. There are lots of cool things to know about LISP; if
More informationNotes Packet on Quadratic Functions and Factoring Graphing quadratic equations in standard form, vertex form, and intercept form.
Notes Packet on Quadratic Functions and Factoring Graphing quadratic equations in standard form, vertex form, and intercept form. A. Intro to Graphs of Quadratic Equations:! = ax + bx + c A is a function
More informationLecture 10: Combinational Circuits
Computer Architecture Lecture : Combinational Circuits Previous two lectures.! TOY machine. Net two lectures.! Digital circuits. George Boole (85 864) Claude Shannon (96 2) Culminating lecture.! Putting
More informationFunctional Programming in Haskell Prof. Madhavan Mukund and S. P. Suresh Chennai Mathematical Institute
Functional Programming in Haskell Prof. Madhavan Mukund and S. P. Suresh Chennai Mathematical Institute Module # 02 Lecture - 03 Characters and Strings So, let us turn our attention to a data type we have
More informationCS 261 Fall Mike Lam, Professor Integer Encodings
CS 261 Fall 2018 Mike Lam, Professor https://xkcd.com/571/ Integer Encodings Integers Topics C integer data types Unsigned encoding Signed encodings Conversions Integer data types in C99 1 byte 2 bytes
More informationWeek - 03 Lecture - 18 Recursion. For the last lecture of this week, we will look at recursive functions. (Refer Slide Time: 00:05)
Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 03 Lecture - 18 Recursion For the
More informationAlgebra I Notes Linear Functions & Inequalities Part I Unit 5 UNIT 5 LINEAR FUNCTIONS AND LINEAR INEQUALITIES IN TWO VARIABLES
UNIT LINEAR FUNCTIONS AND LINEAR INEQUALITIES IN TWO VARIABLES PREREQUISITE SKILLS: students must know how to graph points on the coordinate plane students must understand ratios, rates and unit rate VOCABULARY:
More informationBinary Trees. BSTs. For example: Jargon: Data Structures & Algorithms. root node. level: internal node. edge.
Binary Trees 1 A binary tree is either empty, or it consists of a node called the root together with two binary trees called the left subtree and the right subtree of the root, which are disjoint from
More informationGDB Tutorial. A Walkthrough with Examples. CMSC Spring Last modified March 22, GDB Tutorial
A Walkthrough with Examples CMSC 212 - Spring 2009 Last modified March 22, 2009 What is gdb? GNU Debugger A debugger for several languages, including C and C++ It allows you to inspect what the program
More informationLecture 3: Linear Classification
Lecture 3: Linear Classification Roger Grosse 1 Introduction Last week, we saw an example of a learning task called regression. There, the goal was to predict a scalar-valued target from a set of features.
More informationBoolean Function Simplification
Universit of Wisconsin - Madison ECE/Comp Sci 352 Digital Sstems Fundamentals Charles R. Kime Section Fall 200 Chapter 2 Combinational Logic Circuits Part 5 Charles Kime & Thomas Kaminski Boolean Function
More informationSection 4.2 Graphing Lines
Section. Graphing Lines Objectives In this section, ou will learn to: To successfull complete this section, ou need to understand: Identif collinear points. The order of operations (1.) Graph the line
More informationGrade 6 Math Circles November 6 & Relations, Functions, and Morphisms
Faculty of Mathematics Waterloo, Ontario N2L 3G1 Centre for Education in Mathematics and Computing Relations Let s talk about relations! Grade 6 Math Circles November 6 & 7 2018 Relations, Functions, and
More informationDivisibility Rules and Their Explanations
Divisibility Rules and Their Explanations Increase Your Number Sense These divisibility rules apply to determining the divisibility of a positive integer (1, 2, 3, ) by another positive integer or 0 (although
More informationBasics of Computational Geometry
Basics of Computational Geometry Nadeem Mohsin October 12, 2013 1 Contents This handout covers the basic concepts of computational geometry. Rather than exhaustively covering all the algorithms, it deals
More information(Refer Slide Time 5:19)
Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras Lecture - 7 Logic Minimization using Karnaugh Maps In the last lecture we introduced
More informationGraphing square root functions. What would be the base graph for the square root function? What is the table of values?
Unit 3 (Chapter 2) Radical Functions (Square Root Functions Sketch graphs of radical functions b appling translations, stretches and reflections to the graph of Analze transformations to identif the of
More informationIteration Preview of Coming Attractions The Need to Get Your Act Together A Process for Developing While Statements
Iteration Preview of Coming Attractions In this unit be sure to look for a five-step process for developing while statements tracing while statements The Need to Get Your Act Together As you probably know
More informationSection 1.4: Graphing Calculators and Computers
Section 1.4: Graphing Calculators and Computers In this section we shall show some of the was that calculators can help us in mathematics. 1. Calculator Warnings Before we even consider how a calculator
More information