The Roots of Lisp paul graham

Size: px
Start display at page:

Download "The Roots of Lisp paul graham"

Transcription

1 The Roos of Lisp paul graham Draf, January 18, In 1960, John McCarhy published a remarkable paper in which he did for programming somehing like wha Euclid did for geomery. 1 He showed how, given a handful of simple operaors and a noaion for funcions, you can build a whole programming language. He called his language Lisp, for Lis Processing, because one of his key ideas was o use a simple daa srucure called a lis for boh code and daa. I s worh undersanding wha McCarhy discovered, no jus as a landmark in he hisory of compuers, bu as a model for wha programming is ending o become in our own ime. I seems o me ha here have been wo really clean, consisen models of programming so far: he C model and he Lisp model. These wo seem poins of high ground, wih swampy lowlands beween hem. As compuers have grown more powerful, he new languages being developed have been moving seadily oward he Lisp model. A popular recipe for new programming languages in he pas 20 years has been o ake he C model of compuing and add o i, piecemeal, pars aken from he Lisp model, like runime yping and garbage collecion. In his aricle I m going o ry o explain in he simples possible erms wha McCarhy discovered. The poin is no jus o learn abou an ineresing heoreical resul someone figured ou fory years ago, bu o show where languages are heading. The unusual hing abou Lisp in fac, he defining qualiy of Lisp is ha i can be wrien in iself. To undersand wha Mc- Carhy mean by his, we re going o rerace his seps, wih his mahemaical noaion ranslaed ino running Common Lisp code. 1 Seven Primiive Operaors To sar wih, we define an expression. An expression is eiher an aom, which is a sequence of leers (e.g. foo), or a lis of zero or more expressions, separaed by whiespace and enclosed by parenheses. Here are some expressions: foo (foo) (foo bar) (a b (c) d) The las expression is a lis of four elemens, he hird of which is iself a lis of one elemen. 1 Recursive Funcions of Symbolic Expressions and Their Compuaion by Machine, Par I. Communicaions of he ACM 3:4, April 1960, pp

2 In arihmeic he expression has he value 2. Valid Lisp expressions also have values. If an expression e yields a value v we say ha e reurns v. Our nex sep is o define wha kinds of expressions here can be, and wha value each kind reurns. If an expression is a lis, we call he firs elemen he operaor and he remaining elemens he argumens. We are going o define seven primiive (in he sense of axioms) operaors: quoe, aom, eq, car, cdr, cons, and cond. 1. (quoe x) reurns x. For readabiliy we will abbreviae (quoe x) as x. > (quoe a) a > a a > (quoe ) 2. (aom x) reurns he aom if he value of x is an aom or he empy lis. Oherwise i reurns. In Lisp we convenionally use he aom o represen ruh, and he empy lis o represen falsiy. > (aom a) > (aom ) > (aom ) Now ha we have an operaor whose argumen is evaluaed we can show wha quoe is for. By quoing a lis we proec i from evaluaion. An unquoed lis given as an argumen o an operaor like aom is reaed as code: > (aom (aom a)) whereas a quoed lis is reaed as mere lis, in his case a lis of wo elemens: > (aom (aom a)) This corresponds o he way we use quoes in English. Cambridge is a own in Massachuses ha conains abou 90,000 people. Cambridge is a word ha conains nine leers. 2

3 Quoe may seem a bi of a foreign concep, because few oher languages have anyhing like i. I s closely ied o one of he mos disincive feaures of Lisp: code and daa are made ou of he same daa srucures, and he quoe operaor is he way we disinguish beween hem. 3. (eq x y) reurns if he values of x and y are he same aom or boh he empy lis, and oherwise. > (eq a a) > (eq a b) > (eq ) 4. (car x) expecs he value of x o be a lis, and reurns is firs elemen. > (car ) a 5. (cdr x) expecs he value of x o be a lis, and reurns everyhing afer he firs elemen. > (cdr ) (b c) 6. (cons x y)expecshe valueofyobe alis, andreurnsalisconaining he value of x followed by he elemens of he value of y. > (cons a (b c)) > (cons a (cons b (cons c ))) > (car (cons a (b c))) a > (cdr (cons a (b c))) (b c) 7. (cond (p 1 e 1 )... (p n e n )) is evaluaed as follows. The p expressions are evaluaed in order unil one reurns. When one is found, he value of he corresponding e expression is reurned as he value of he whole cond expression. > (cond ((eq a b) firs) ((aom a) second)) second 3

4 In five of our seven primiive operaors, he argumens are always evaluaed when an expression beginning wih ha operaor is evaluaed. 2 We will call an operaor of ha ype a funcion. 2 Denoing Funcions Nex we define a noaion for describing funcions. A funcion is expressed as (lambda (p 1...p n ) e), where p 1...p n are aoms (called parameers) and e is an expression. An expression whose firs elemen is such an expression ((lambda (p 1...p n ) e) a 1...a n ) is called a funcion call and is value is compued as follows. Each expression a i is evaluaed. Then e is evaluaed. During he evaluaion of e, he value of any occurrence of one of he p i is he value of he corresponding a i in he mos recen funcion call. > ((lambda (x) (cons x (b))) a) (a b) > ((lambda (x y) (cons x (cdr y))) z ) (z b c) Ifan expressionhasasis firs elemen anaom f ha is no one ofhe primiive operaors (f a 1...a n ) and he value of f is a funcion (lambda (p 1...p n ) e) hen he value of he expression is he value of ((lambda (p 1...p n ) e) a 1...a n ) In oher words, parameers can be used as operaors in expressions as well as argumens: > ((lambda (f) (f (b c))) (lambda (x) (cons a x))) There is anoher noaion for funcions ha enables he funcion o refer o iself, hereby giving us a convenien way o define recursive funcions. 3 The 2 Expressions beginning wih he oher wo operaors, quoe and cond, are evaluaed differenly. When a quoe expression is evaluaed, is argumen is no evaluaed, bu is simply reurned as he value of he whole quoe expression. And in a valid cond expression, only an L-shaped pah of subexpressions will be evaluaed. 3 Logically we don need o define a new noaion for his. We could define recursive funcions in our exising noaion using a funcion on funcions called he Y combinaor. I may be ha McCarhy did no know abou he Y combinaor when he wroe his paper; in any case, label noaion is more readable. 4

5 noaion (label f (lambda (p 1...p n ) e)) denoesafuncionhabehaveslike(lambda (p 1...p n ) e), wihheaddiional propery ha an occurrence of f wihin e will evaluae o he label expression, as if f were a parameer of he funcion. Suppose we wan o define a funcion (subs x y z), which akes an expression x, an aom y, and a lis z, and reurns a lis like z bu wih each insance of y (a any deph of nesing) in z replaced by x. > (subs m b (a b d)) (a m (a m c) d) We can denoe his funcion as (label subs (lambda (x y z) (cond ((aom z) (cond ((eq z y) x) ( z))) ( (cons (subs x y (car z)) (subs x y (cdr z))))))) We will abbreviae f = (label f (lambda (p 1...p n ) e)) as (defun f (p 1...p n ) e) so (defun subs (x y z) (cond ((aom z) (cond ((eq z y) x) ( z))) ( (cons (subs x y (car z)) (subs x y (cdr z))))))) Incidenally, we see here how o ge a defaul clause in a cond expression. A clause whose firs elemen is will always succeed. So (cond (x y) ( z)) is equivalen o wha we migh wrie in a language wih synax as if x hen y else z 3 Some Funcions Now ha we have a way of expressing funcions, we define some new ones in erms of our seven primiive operaors. Firs i will be convenien o inroduce 5

6 someabbreviaionsforcommonpaerns. Wewill usecxr, wherexisasequence of as or ds, as an abbreviaion for he corresponding composiion of car and cdr. So for example (cadr e) is an abbreviaion for (car (cdr e)), which reurns he second elemen of e. > (cadr ((a b) (c d) e)) (c d) > (caddr ((a b) (c d) e)) e > (cdar ((a b) (c d) e)) (b) Also, we will use (lis e 1...e n ) for (cons e 1... (cons e n )... ). > (cons a (cons b (cons c ))) > (lis a b c) Now we define some new funcions. I ve changed he names of hese funcions by adding periods a he end. This disinguishes primiive funcions from hose defined in erms of hem, and also avoids clashes wih exising Common Lisp funcions. 1. (null. x) ess wheher is argumen is he empy lis. (defun null. (x) (eq x )) > (null. a) > (null. ) 2. (and. x y) reurns if boh is argumens do and oherwise. (defun and. (x y) (cond (x (cond (y ) ( ))) ( ))) > (and. (aom a) (eq a a)) > (and. (aom a) (eq a b)) 3. (no. x) reurns if is argumen reurns, and if is argumen reurns. 6

7 (defun no. (x) (cond (x ) ( ))) > (no (eq a a)) > (no (eq a b)) 4. (append. x y) akes wo liss and reurns heir concaenaion. (defun append. (x y) (cond ((null. x) y) ( (cons (car x) (append. (cdr x) y))))) > (append. (a b) (c d)) (a b c d) > (append. (c d)) (c d) 5. (pair. x y) akes wo liss of he same lengh and reurns a lis of woelemen liss conaining successive pairs of an elemen from each. (defun pair. (x y) (cond ((and. (null. x) (null. y)) ) ((and. (no. (aom x)) (no. (aom y))) (cons (lis (car x) (car y)) (pair. (cdr x) (cdr y)))))) > (pair. (x y z) ) ((x a) (y b) (z c)) 6. (assoc. x y) akes an aom x and a lis y of he form creaed by pair., and reurns he second elemen of he firs lis in y whose firs elemen is x. (defun assoc. (x y) (cond ((eq (caar y) x) (cadar y)) ( (assoc. x (cdr y))))) > (assoc. x ((x a) (y b))) a > (assoc. x ((x new) (x a) (y b))) new 7

8 4 The Surprise So we can define funcions ha concaenae liss, subsiue one expression for anoher, ec. An elegan noaion, perhaps, bu so wha? Now comes he surprise. We can also, i urns ou, wrie a funcion ha acs as an inerpreer for our language: a funcion ha akes as an argumen any Lisp expression, and reurns is value. Here i is: (defun eval. (e a) (cond ((aom e) (assoc. e a)) ((aom (car e)) (cond ((eq (car e) quoe) (cadr e)) ((eq (car e) aom) (aom (eval. (cadr e) a))) ((eq (car e) eq) (eq (eval. (cadr e) a) (eval. (caddr e) a))) ((eq (car e) car) (car (eval. (cadr e) a))) ((eq (car e) cdr) (cdr (eval. (cadr e) a))) ((eq (car e) cons) (cons (eval. (cadr e) a) (eval. (caddr e) a))) ((eq (car e) cond) (evcon. (cdr e) a)) ( (eval. (cons (assoc. (car e) a) (cdr e)) a)))) ((eq (caar e) label) (eval. (cons (caddar e) (cdr e)) (cons (lis (cadar e) (car e)) a))) ((eq (caar e) lambda) (eval. (caddar e) (append. (pair. (cadar e) (evlis. (cdr e) a)) a))))) (defun evcon. (c a) (cond ((eval. (caar c) a) (eval. (cadar c) a)) ( (evcon. (cdr c) a)))) (defun evlis. (m a) (cond ((null. m) ) ( (cons (eval. (car m) a) (evlis. (cdr m) a))))) The definiion of eval. is longer han any of he ohers we ve seen before. Le s consider how each par works. The funcion akes wo argumens: e, he expression o be evaluaed, and a, a lis represening he values ha aoms have been given by appearing as 8

9 parameers in funcion calls. This lis is called he environmen, and i is of he form creaed by pair.. I was in order o build and search hese liss ha we wroe pair. and assoc.. The spine of eval. is a cond expression wih four clauses. How we evaluae an expression depends on wha kind i is. The firs clause handles aoms. If e is an aom, we look up is value in he environmen: > (eval. x ((x a) (y b))) a The second clause of eval. is anoher cond for handling expressions of he form (a...), where a is an aom. These include all he uses of he primiive operaors, and here is a clause for each one. > (eval. (eq a a) ) > (eval. (cons x (b c)) ((x a) (y b))) All of hese (excep quoe) call eval. o find he value of he argumens. The las wo clauses are more complicaed. To evaluae a cond expression we call a subsidiary funcion called evcon., which works is way hrough he clauses recursively, looking for one in which he firs elemen reurns. When i finds such a clause i reurns he value of he second elemen. > (eval. (cond ((aom x) aom) ( lis)) ((x (a b)))) lis The final par of he second clause of eval. handles calls o funcions ha have been passed as parameers. I works by replacing he aom wih is value (which ough o be a lambda or label expression) and evaluaing he resuling expression. So (eval. (f (b c)) ((f (lambda (x) (cons a x))))) urns ino (eval. ((lambda (x) (cons a x)) (b c)) ((f (lambda (x) (cons a x))))) which reurns. The las wo clauses in eval. handle funcion calls in which he firs elemen is an acual lambda or label expression. A label expression is evaluaed by pushing a lis of he funcion name and he funcion iself ono he environmen, and hen calling eval. on an expression wih he inner lambda expression subsiued for he label expression. Tha is, 9

10 (eval. ((label firsaom (lambda (x) (cond ((aom x) x) ( (firsaom (car x)))))) y) ((y ((a b) (c d))))) becomes (eval. ((lambda (x) (cond ((aom x) x) ( (firsaom (car x))))) y) ((firsaom (label firsaom (lambda (x) (cond ((aom x) x) ( (firsaom (car x))))))) (y ((a b) (c d))))) which evenually reurns a. Finally, anexpressionofheform((lambda (p 1...p n ) e) a 1...a n )isevaluaed by firs calling evlis.o ge a lis of values (v 1... v n ) of he argumens a 1...a n, and hen evaluaing e wih (p 1 v 1 )... (p n v n ) appended o he fron of he environmen. So (eval. ((lambda (x y) (cons x (cdr y))) a (b c d)) ) becomes (eval. (cons x (cdr y)) ((x a) (y (b c d)))) which evenually reurns (a c d). 5 Afermah Now ha we undersand how eval works, le s sep back and consider wha i means. Wha we have here is a remarkably elegan model of compuaion. Using jus quoe, aom, eq, car, cdr, cons, and cond, we can define a funcion, eval., ha acually implemens our language, and hen using ha we can define any addiional funcion we wan. There were already models of compuaion, of course mos noably he Turing Machine. Bu Turing Machine programs are no very edifying o read. If you wan a language for describing algorihms, you migh wan somehing more absrac, and ha was one of McCarhy s aims in defining Lisp. 10

11 The language he defined in 1960 was missing a lo. I has no side-effecs, no sequenial execuion (which is useful only wih side effecs anyway), no pracical numbers, 4 and dynamic scope. Bu hese limiaions can be remedied wih surprisingly lile addiional code. Seele and Sussman show how o do i in a famous paper called The Ar of he Inerpreer. 5 If you undersand McCarhy s eval, you undersand more han jus a sage in he hisory of languages. These ideas are sill he semanic core of Lisp oday. So sudying McCarhy s original paper shows us, in a sense, wha Lisp really is. I s no somehing ha McCarhy designed so much as somehing he discovered. I s no inrinsically a language for AI or for rapid prooyping, or any oher ask a ha level. I s wha you ge (or one hing you ge) when you ry o axiomaize compuaion. Over ime, he median language, meaning he language used by he median programmer, has grown consisenly closer o Lisp. So by undersanding eval you re undersanding wha will probably be he main model of compuaion well ino he fuure. 4 I is possible o do arihmeic in McCarhy s 1960 Lisp by using e.g. a lis of n aoms o represen he number n. 5 Guy Lewis Seele, Jr. and Gerald Jay Sussman, The Ar of he Inerpreer, or he Modulariy Complex (Pars Zero, One, and Two), MIT AI Lab Memo 453, May

12 Noes In ranslaing McCarhy s noaion ino running code I ried o change as lile as possible. I was emped o make he code easier o read, bu I waned o keep he flavor of he original. In McCarhy s paper, falsiy is represened by f, no he empy lis. I used o represen falsiy so ha he examples would work in Common Lisp. The code nowhere depends on falsiy happening also o be he empy lis; nohing is ever consed ono he resul reurned by a predicae. I skipped building liss ou of doed pairs, because you don need hem o undersand eval. I also skipped menioning apply, hough i was apply(a very early form of i, whose main purpose was o quoe argumens) ha McCarhy called he universal funcion in 1960; eval was hen jus a subrouine ha apply called o do all he work. I defined lis and he cxrs as abbreviaions because ha s how McCarhy did i. In fac he cxrs could all have been defined as ordinary funcions. So could lis if we modified eval, as we easily could, o le funcions ake any number of argumens. McCarhy s paper only had five primiive operaors. He used cond and quoe bu may have hough of hem as par of his mealanguage. He likewise didn define he logical operaors and and no, bu his is less of a problem because adequae versions can be defined as funcions. In he definiion of eval. we called oher funcions like pair. and assoc., buanycallooneofhefuncions wedefinedin ermsofheprimiiveoperaors could be replaced by a call o eval.. Tha is, (assoc. (car e) a) could have been wrien as (eval. ((label assoc. (lambda (x y) (cond ((eq (caar y) x) (cadar y)) ( (assoc. x (cdr y)))))) (car e) a) (cons (lis e e) (cons (lis a a) a))) There was a small bug in McCarhy s eval. Line 16 was (equivalen o) (evlis. (cdr e) a) insead of jus (cdr e), which caused he argumens in a call o a named funcion o be evaluaed wice. This suggess ha his descripion of eval had no ye been implemened in IBM 704 machine language when he paper was submied. I also shows how hard i is o be sure of he correcness of any lengh of program wihou rying o run i. I encounered one oher problem in McCarhy s code. Afer giving he definiion of eval he goes on o give some examples of higher-order funcions funcions ha ake oher funcions as argumens. He defines maplis: 12

13 (label maplis (lambda (x f) (cond ((null x) ) ( (cons (f x) (maplis (cdr x) f)))))) hen uses i o wrie a simple funcion diff for symbolic differeniaion. Bu diff passes maplis a funcion ha uses x as a parameer, and he reference o i is capured by he parameer x wihin maplis. 6 I s an eloquen esimony o he dangers of dynamic scope ha even he very firs example of higher-order Lisp funcions was broken because of i. I may be ha McCarhy was no fully awareof he implicaions of dynamic scope in Dynamic scope remained in Lisp implemenaions for a surprisingly long ime unil Sussman and Seele developed Scheme in Lexical scope doesnocomplicaehe definiion ofevalverymuch, bu imaymakecompilers harder o wrie. 6 Presen day Lisp programmers would use mapcar insead of maplis here. This example does clear up one mysery: why maplis is in Common Lisp a all. I was he original mapping funcion, and mapcar a laer addiion. 13

COMP26120: Algorithms and Imperative Programming

COMP26120: Algorithms and Imperative Programming COMP26120 ecure C3 1/48 COMP26120: Algorihms and Imperaive Programming ecure C3: C - Recursive Daa Srucures Pee Jinks School of Compuer Science, Universiy of Mancheser Auumn 2011 COMP26120 ecure C3 2/48

More information

Announcements For The Logic of Boolean Connectives Truth Tables, Tautologies & Logical Truths. Outline. Introduction Truth Functions

Announcements For The Logic of Boolean Connectives Truth Tables, Tautologies & Logical Truths. Outline. Introduction Truth Functions Announcemens For 02.05.09 The Logic o Boolean Connecives Truh Tables, Tauologies & Logical Truhs 1 HW3 is due nex Tuesday William Sarr 02.05.09 William Sarr The Logic o Boolean Connecives (Phil 201.02)

More information

CENG 477 Introduction to Computer Graphics. Modeling Transformations

CENG 477 Introduction to Computer Graphics. Modeling Transformations CENG 477 Inroducion o Compuer Graphics Modeling Transformaions Modeling Transformaions Model coordinaes o World coordinaes: Model coordinaes: All shapes wih heir local coordinaes and sies. world World

More information

STRING DESCRIPTIONS OF DATA FOR DISPLAY*

STRING DESCRIPTIONS OF DATA FOR DISPLAY* SLAC-PUB-383 January 1968 STRING DESCRIPTIONS OF DATA FOR DISPLAY* J. E. George and W. F. Miller Compuer Science Deparmen and Sanford Linear Acceleraor Cener Sanford Universiy Sanford, California Absrac

More information

Midterm Exam Announcements

Midterm Exam Announcements Miderm Exam Noe: This was a challenging exam. CSCI 4: Principles o Programming Languages Lecure 1: Excepions Insrucor: Dan Barowy Miderm Exam Scores 18 16 14 12 10 needs improvemen 8 6 4 2 0 0-49 50-59

More information

Sam knows that his MP3 player has 40% of its battery life left and that the battery charges by an additional 12 percentage points every 15 minutes.

Sam knows that his MP3 player has 40% of its battery life left and that the battery charges by an additional 12 percentage points every 15 minutes. 8.F Baery Charging Task Sam wans o ake his MP3 player and his video game player on a car rip. An hour before hey plan o leave, he realized ha he forgo o charge he baeries las nigh. A ha poin, he plugged

More information

MB86297A Carmine Timing Analysis of the DDR Interface

MB86297A Carmine Timing Analysis of the DDR Interface Applicaion Noe MB86297A Carmine Timing Analysis of he DDR Inerface Fujisu Microelecronics Europe GmbH Hisory Dae Auhor Version Commen 05.02.2008 Anders Ramdahl 0.01 Firs draf 06.02.2008 Anders Ramdahl

More information

Implementing Ray Casting in Tetrahedral Meshes with Programmable Graphics Hardware (Technical Report)

Implementing Ray Casting in Tetrahedral Meshes with Programmable Graphics Hardware (Technical Report) Implemening Ray Casing in Terahedral Meshes wih Programmable Graphics Hardware (Technical Repor) Marin Kraus, Thomas Erl March 28, 2002 1 Inroducion Alhough cell-projecion, e.g., [3, 2], and resampling,

More information

Data Structures and Algorithms. The material for this lecture is drawn, in part, from The Practice of Programming (Kernighan & Pike) Chapter 2

Data Structures and Algorithms. The material for this lecture is drawn, in part, from The Practice of Programming (Kernighan & Pike) Chapter 2 Daa Srucures and Algorihms The maerial for his lecure is drawn, in par, from The Pracice of Programming (Kernighan & Pike) Chaper 2 1 Moivaing Quoaion Every program depends on algorihms and daa srucures,

More information

Assignment 2. Due Monday Feb. 12, 10:00pm.

Assignment 2. Due Monday Feb. 12, 10:00pm. Faculy of rs and Science Universiy of Torono CSC 358 - Inroducion o Compuer Neworks, Winer 218, LEC11 ssignmen 2 Due Monday Feb. 12, 1:pm. 1 Quesion 1 (2 Poins): Go-ack n RQ In his quesion, we review how

More information

Axiomatic Foundations and Algorithms for Deciding Semantic Equivalences of SQL Queries

Axiomatic Foundations and Algorithms for Deciding Semantic Equivalences of SQL Queries Axiomaic Foundaions and Algorihms for Deciding Semanic Equivalences of SQL Queries Shumo Chu, Brendan Murphy, Jared Roesch, Alvin Cheung, Dan Suciu Paul G. Allen School of Compuer Science and Engineering

More information

4. Minimax and planning problems

4. Minimax and planning problems CS/ECE/ISyE 524 Inroducion o Opimizaion Spring 2017 18 4. Minima and planning problems ˆ Opimizing piecewise linear funcions ˆ Minima problems ˆ Eample: Chebyshev cener ˆ Muli-period planning problems

More information

tr_lisp.asc Page 1 McESE-FranzLISP: McMASTER EXPERT SYSTEM EXTENSION OF FranzLISP F. Franek Technical Report no TR-22/88

tr_lisp.asc Page 1 McESE-FranzLISP: McMASTER EXPERT SYSTEM EXTENSION OF FranzLISP F. Franek Technical Report no TR-22/88 r_lisp.asc Page 1 McESE-FranzLISP: McMASTER EXPERT SYSTEM EXTENSION OF FranzLISP F. Franek Technical Repor no TR-22/88 Deparmen of Compuer Science and Sysems McMaser Universiy 1988 McESE-FranzLISP: McMASTER

More information

A Matching Algorithm for Content-Based Image Retrieval

A Matching Algorithm for Content-Based Image Retrieval A Maching Algorihm for Conen-Based Image Rerieval Sue J. Cho Deparmen of Compuer Science Seoul Naional Universiy Seoul, Korea Absrac Conen-based image rerieval sysem rerieves an image from a daabase using

More information

1.4 Application Separable Equations and the Logistic Equation

1.4 Application Separable Equations and the Logistic Equation 1.4 Applicaion Separable Equaions and he Logisic Equaion If a separable differenial equaion is wrien in he form f ( y) dy= g( x) dx, hen is general soluion can be wrien in he form f ( y ) dy = g ( x )

More information

Learning in Games via Opponent Strategy Estimation and Policy Search

Learning in Games via Opponent Strategy Estimation and Policy Search Learning in Games via Opponen Sraegy Esimaion and Policy Search Yavar Naddaf Deparmen of Compuer Science Universiy of Briish Columbia Vancouver, BC yavar@naddaf.name Nando de Freias (Supervisor) Deparmen

More information

NEWTON S SECOND LAW OF MOTION

NEWTON S SECOND LAW OF MOTION Course and Secion Dae Names NEWTON S SECOND LAW OF MOTION The acceleraion of an objec is defined as he rae of change of elociy. If he elociy changes by an amoun in a ime, hen he aerage acceleraion during

More information

4 Error Control. 4.1 Issues with Reliable Protocols

4 Error Control. 4.1 Issues with Reliable Protocols 4 Error Conrol Jus abou all communicaion sysems aemp o ensure ha he daa ges o he oher end of he link wihou errors. Since i s impossible o build an error-free physical layer (alhough some shor links can

More information

STEREO PLANE MATCHING TECHNIQUE

STEREO PLANE MATCHING TECHNIQUE STEREO PLANE MATCHING TECHNIQUE Commission III KEY WORDS: Sereo Maching, Surface Modeling, Projecive Transformaion, Homography ABSTRACT: This paper presens a new ype of sereo maching algorihm called Sereo

More information

MATH Differential Equations September 15, 2008 Project 1, Fall 2008 Due: September 24, 2008

MATH Differential Equations September 15, 2008 Project 1, Fall 2008 Due: September 24, 2008 MATH 5 - Differenial Equaions Sepember 15, 8 Projec 1, Fall 8 Due: Sepember 4, 8 Lab 1.3 - Logisics Populaion Models wih Harvesing For his projec we consider lab 1.3 of Differenial Equaions pages 146 o

More information

EECS 487: Interactive Computer Graphics

EECS 487: Interactive Computer Graphics EECS 487: Ineracive Compuer Graphics Lecure 7: B-splines curves Raional Bézier and NURBS Cubic Splines A represenaion of cubic spline consiss of: four conrol poins (why four?) hese are compleely user specified

More information

Why not experiment with the system itself? Ways to study a system System. Application areas. Different kinds of systems

Why not experiment with the system itself? Ways to study a system System. Application areas. Different kinds of systems Simulaion Wha is simulaion? Simple synonym: imiaion We are ineresed in sudying a Insead of experimening wih he iself we experimen wih a model of he Experimen wih he Acual Ways o sudy a Sysem Experimen

More information

Quantitative macro models feature an infinite number of periods A more realistic (?) view of time

Quantitative macro models feature an infinite number of periods A more realistic (?) view of time INFINIE-HORIZON CONSUMPION-SAVINGS MODEL SEPEMBER, Inroducion BASICS Quaniaive macro models feaure an infinie number of periods A more realisic (?) view of ime Infinie number of periods A meaphor for many

More information

Optics and Light. Presentation

Optics and Light. Presentation Opics and Ligh Presenaion Opics and Ligh Wha comes o mind when you hear he words opics and ligh? Wha is an opical illusion? Opical illusions can use color, ligh and paerns o creae images ha can be

More information

Shortest Path Algorithms. Lecture I: Shortest Path Algorithms. Example. Graphs and Matrices. Setting: Dr Kieran T. Herley.

Shortest Path Algorithms. Lecture I: Shortest Path Algorithms. Example. Graphs and Matrices. Setting: Dr Kieran T. Herley. Shores Pah Algorihms Background Seing: Lecure I: Shores Pah Algorihms Dr Kieran T. Herle Deparmen of Compuer Science Universi College Cork Ocober 201 direced graph, real edge weighs Le he lengh of a pah

More information

AML710 CAD LECTURE 11 SPACE CURVES. Space Curves Intrinsic properties Synthetic curves

AML710 CAD LECTURE 11 SPACE CURVES. Space Curves Intrinsic properties Synthetic curves AML7 CAD LECTURE Space Curves Inrinsic properies Synheic curves A curve which may pass hrough any region of hreedimensional space, as conrased o a plane curve which mus lie on a single plane. Space curves

More information

NRMI: Natural and Efficient Middleware

NRMI: Natural and Efficient Middleware NRMI: Naural and Efficien Middleware Eli Tilevich and Yannis Smaragdakis Cener for Experimenal Research in Compuer Sysems (CERCS), College of Compuing, Georgia Tech {ilevich, yannis}@cc.gaech.edu Absrac

More information

Gauss-Jordan Algorithm

Gauss-Jordan Algorithm Gauss-Jordan Algorihm The Gauss-Jordan algorihm is a sep by sep procedure for solving a sysem of linear equaions which may conain any number of variables and any number of equaions. The algorihm is carried

More information

PART 1 REFERENCE INFORMATION CONTROL DATA 6400 SYSTEMS CENTRAL PROCESSOR MONITOR

PART 1 REFERENCE INFORMATION CONTROL DATA 6400 SYSTEMS CENTRAL PROCESSOR MONITOR . ~ PART 1 c 0 \,).,,.,, REFERENCE NFORMATON CONTROL DATA 6400 SYSTEMS CENTRAL PROCESSOR MONTOR n CONTROL DATA 6400 Compuer Sysems, sysem funcions are normally handled by he Monior locaed in a Peripheral

More information

Analysis of Various Types of Bugs in the Object Oriented Java Script Language Coding

Analysis of Various Types of Bugs in the Object Oriented Java Script Language Coding Indian Journal of Science and Technology, Vol 8(21), DOI: 10.17485/ijs/2015/v8i21/69958, Sepember 2015 ISSN (Prin) : 0974-6846 ISSN (Online) : 0974-5645 Analysis of Various Types of Bugs in he Objec Oriened

More information

MOTION DETECTORS GRAPH MATCHING LAB PRE-LAB QUESTIONS

MOTION DETECTORS GRAPH MATCHING LAB PRE-LAB QUESTIONS NME: TE: LOK: MOTION ETETORS GRPH MTHING L PRE-L QUESTIONS 1. Read he insrucions, and answer he following quesions. Make sure you resae he quesion so I don hae o read he quesion o undersand he answer..

More information

Chapter 4 Sequential Instructions

Chapter 4 Sequential Instructions Chaper 4 Sequenial Insrucions The sequenial insrucions of FBs-PLC shown in his chaper are also lised in secion 3.. Please refer o Chaper, "PLC Ladder diagram and he Coding rules of Mnemonic insrucion",

More information

Optimal Crane Scheduling

Optimal Crane Scheduling Opimal Crane Scheduling Samid Hoda, John Hooker Laife Genc Kaya, Ben Peerson Carnegie Mellon Universiy Iiro Harjunkoski ABB Corporae Research EWO - 13 November 2007 1/16 Problem Track-mouned cranes move

More information

Mobile Robots Mapping

Mobile Robots Mapping Mobile Robos Mapping 1 Roboics is Easy conrol behavior percepion modelling domain model environmen model informaion exracion raw daa planning ask cogniion reasoning pah planning navigaion pah execuion

More information

CAMERA CALIBRATION BY REGISTRATION STEREO RECONSTRUCTION TO 3D MODEL

CAMERA CALIBRATION BY REGISTRATION STEREO RECONSTRUCTION TO 3D MODEL CAMERA CALIBRATION BY REGISTRATION STEREO RECONSTRUCTION TO 3D MODEL Klečka Jan Docoral Degree Programme (1), FEEC BUT E-mail: xkleck01@sud.feec.vubr.cz Supervised by: Horák Karel E-mail: horak@feec.vubr.cz

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 06 Using FSMs Review: Typical Controller: state

Outline. EECS Components and Design Techniques for Digital Systems. Lec 06 Using FSMs Review: Typical Controller: state Ouline EECS 5 - Componens and Design Techniques for Digial Sysems Lec 6 Using FSMs 9-3-7 Review FSMs Mapping o FPGAs Typical uses of FSMs Synchronous Seq. Circuis safe composiion Timing FSMs in verilog

More information

Rule-Based Multi-Query Optimization

Rule-Based Multi-Query Optimization Rule-Based Muli-Query Opimizaion Mingsheng Hong Dep. of Compuer cience Cornell Universiy mshong@cs.cornell.edu Johannes Gehrke Dep. of Compuer cience Cornell Universiy johannes@cs.cornell.edu Mirek Riedewald

More information

Design Alternatives for a Thin Lens Spatial Integrator Array

Design Alternatives for a Thin Lens Spatial Integrator Array Egyp. J. Solids, Vol. (7), No. (), (004) 75 Design Alernaives for a Thin Lens Spaial Inegraor Array Hala Kamal *, Daniel V azquez and Javier Alda and E. Bernabeu Opics Deparmen. Universiy Compluense of

More information

4.1 3D GEOMETRIC TRANSFORMATIONS

4.1 3D GEOMETRIC TRANSFORMATIONS MODULE IV MCA - 3 COMPUTER GRAPHICS ADMN 29- Dep. of Compuer Science And Applicaions, SJCET, Palai 94 4. 3D GEOMETRIC TRANSFORMATIONS Mehods for geomeric ransformaions and objec modeling in hree dimensions

More information

Automatic Calculation of Coverage Profiles for Coverage-based Testing

Automatic Calculation of Coverage Profiles for Coverage-based Testing Auomaic Calculaion of Coverage Profiles for Coverage-based Tesing Raimund Kirner 1 and Waler Haas 1 Vienna Universiy of Technology, Insiue of Compuer Engineering, Vienna, Ausria, raimund@vmars.uwien.ac.a

More information

Voltair Version 2.5 Release Notes (January, 2018)

Voltair Version 2.5 Release Notes (January, 2018) Volair Version 2.5 Release Noes (January, 2018) Inroducion 25-Seven s new Firmware Updae 2.5 for he Volair processor is par of our coninuing effors o improve Volair wih new feaures and capabiliies. For

More information

Fill in the following table for the functions shown below.

Fill in the following table for the functions shown below. By: Carl H. Durney and Neil E. Coer Example 1 EX: Fill in he following able for he funcions shown below. he funcion is odd he funcion is even he funcion has shif-flip symmery he funcion has quarer-wave

More information

BI-TEMPORAL INDEXING

BI-TEMPORAL INDEXING BI-TEMPORAL INDEXING Mirella M. Moro Uniersidade Federal do Rio Grande do Sul Poro Alegre, RS, Brazil hp://www.inf.ufrgs.br/~mirella/ Vassilis J. Tsoras Uniersiy of California, Rierside Rierside, CA 92521,

More information

Computer representations of piecewise

Computer representations of piecewise Edior: Gabriel Taubin Inroducion o Geomeric Processing hrough Opimizaion Gabriel Taubin Brown Universiy Compuer represenaions o piecewise smooh suraces have become vial echnologies in areas ranging rom

More information

COSC 3213: Computer Networks I Chapter 6 Handout # 7

COSC 3213: Computer Networks I Chapter 6 Handout # 7 COSC 3213: Compuer Neworks I Chaper 6 Handou # 7 Insrucor: Dr. Marvin Mandelbaum Deparmen of Compuer Science York Universiy F05 Secion A Medium Access Conrol (MAC) Topics: 1. Muliple Access Communicaions:

More information

Definition and examples of time series

Definition and examples of time series Definiion and examples of ime series A ime series is a sequence of daa poins being recorded a specific imes. Formally, le,,p be a probabiliy space, and T an index se. A real valued sochasic process is

More information

Coded Caching with Multiple File Requests

Coded Caching with Multiple File Requests Coded Caching wih Muliple File Requess Yi-Peng Wei Sennur Ulukus Deparmen of Elecrical and Compuer Engineering Universiy of Maryland College Park, MD 20742 ypwei@umd.edu ulukus@umd.edu Absrac We sudy a

More information

Streaming Nested Data Parallelism on Multicores

Streaming Nested Data Parallelism on Multicores Sreaming Nesed Daa Parallelism on Mulicores Frederik M. Madsen Andrzej Filinski Deparmen of Compuer Science (DIKU) Universiy of Copenhagen, Denmark {fmma,andrzej}@di.ku.dk Absrac The paradigm of nesed

More information

Network management and QoS provisioning - QoS in Frame Relay. . packet switching with virtual circuit service (virtual circuits are bidirectional);

Network management and QoS provisioning - QoS in Frame Relay. . packet switching with virtual circuit service (virtual circuits are bidirectional); QoS in Frame Relay Frame relay characerisics are:. packe swiching wih virual circui service (virual circuis are bidirecional);. labels are called DLCI (Daa Link Connecion Idenifier);. for connecion is

More information

FIELD PROGRAMMABLE GATE ARRAY (FPGA) AS A NEW APPROACH TO IMPLEMENT THE CHAOTIC GENERATORS

FIELD PROGRAMMABLE GATE ARRAY (FPGA) AS A NEW APPROACH TO IMPLEMENT THE CHAOTIC GENERATORS FIELD PROGRAMMABLE GATE ARRAY (FPGA) AS A NEW APPROACH TO IMPLEMENT THE CHAOTIC GENERATORS Mohammed A. Aseeri and M. I. Sobhy Deparmen of Elecronics, The Universiy of Ken a Canerbury Canerbury, Ken, CT2

More information

Handling uncertainty in semantic information retrieval process

Handling uncertainty in semantic information retrieval process Handling uncerainy in semanic informaion rerieval process Chkiwa Mounira 1, Jedidi Anis 1 and Faiez Gargouri 1 1 Mulimedia, InfoRmaion sysems and Advanced Compuing Laboraory Sfax Universiy, Tunisia m.chkiwa@gmail.com,

More information

1 œ DRUM SET KEY. 8 Odd Meter Clave Conor Guilfoyle. Cowbell (neck) Cymbal. Hi-hat. Floor tom (shell) Clave block. Cowbell (mouth) Hi tom.

1 œ DRUM SET KEY. 8 Odd Meter Clave Conor Guilfoyle. Cowbell (neck) Cymbal. Hi-hat. Floor tom (shell) Clave block. Cowbell (mouth) Hi tom. DRUM SET KEY Hi-ha Cmbal Clave block Cowbell (mouh) 0 Cowbell (neck) Floor om (shell) Hi om Mid om Snare Floor om Snare cross sick or clave block Bass drum Hi-ha wih foo 8 Odd Meer Clave Conor Guilfole

More information

Project #1 Math 285 Name:

Project #1 Math 285 Name: Projec #1 Mah 85 Name: Solving Orinary Differenial Equaions by Maple: Sep 1: Iniialize he program: wih(deools): wih(pdeools): Sep : Define an ODE: (There are several ways of efining equaions, we sar wih

More information

Michiel Helder and Marielle C.T.A Geurts. Hoofdkantoor PTT Post / Dutch Postal Services Headquarters

Michiel Helder and Marielle C.T.A Geurts. Hoofdkantoor PTT Post / Dutch Postal Services Headquarters SHORT TERM PREDICTIONS A MONITORING SYSTEM by Michiel Helder and Marielle C.T.A Geurs Hoofdkanoor PTT Pos / Duch Posal Services Headquarers Keywords macro ime series shor erm predicions ARIMA-models faciliy

More information

The University of Sheffield Department of Computer Science. Indexing XML Databases: Classifications, Problems Identification and a New Approach

The University of Sheffield Department of Computer Science. Indexing XML Databases: Classifications, Problems Identification and a New Approach The Universiy of Sheffield Deparmen of Compuer Science Indexing XML Daabases: Classificaions, Problems Idenificaion and a New Approach Research Memorandum CS-7-5 Mohammed Al-Badawi Compuer Science Dep

More information

Effects needed for Realism. Ray Tracing. Ray Tracing: History. Outline. Foundations of Computer Graphics (Fall 2012)

Effects needed for Realism. Ray Tracing. Ray Tracing: History. Outline. Foundations of Computer Graphics (Fall 2012) Foundaions of ompuer Graphics (Fall 2012) S 184, Lecure 16: Ray Tracing hp://ins.eecs.berkeley.edu/~cs184 Effecs needed for Realism (Sof) Shadows Reflecions (Mirrors and Glossy) Transparency (Waer, Glass)

More information

Data Structures and Algorithms

Data Structures and Algorithms Daa Srucures and Algorihms The maerial for his lecure is drawn, in ar, from The Pracice of Programming (Kernighan & Pike) Chaer 2 1 Goals of his Lecure Hel you learn (or refresh your memory) abou: Common

More information

Packet Scheduling in a Low-Latency Optical Interconnect with Electronic Buffers

Packet Scheduling in a Low-Latency Optical Interconnect with Electronic Buffers Packe cheduling in a Low-Laency Opical Inerconnec wih Elecronic Buffers Lin Liu Zhenghao Zhang Yuanyuan Yang Dep Elecrical & Compuer Engineering Compuer cience Deparmen Dep Elecrical & Compuer Engineering

More information

Using CANopen Slave Driver

Using CANopen Slave Driver CAN Bus User Manual Using CANopen Slave Driver V1. Table of Conens 1. SDO Communicaion... 1 2. PDO Communicaion... 1 3. TPDO Reading and RPDO Wriing... 2 4. RPDO Reading... 3 5. CANopen Communicaion Parameer

More information

MARSS Reference Sheet

MARSS Reference Sheet MARSS Reference Shee The defaul MARSS model (form="marxss") is wrien as follows: x = B x 1 + u + C c + w where w MVN( Q ) y = Z x + a + D d + v where v MVN( R ) x 1 MVN(π Λ) or x MVN(π Λ) c and d are inpus

More information

Numerical Solution of ODE

Numerical Solution of ODE Numerical Soluion of ODE Euler and Implici Euler resar; wih(deools): wih(plos): The package ploools conains more funcions for ploing, especially a funcion o draw a single line: wih(ploools): wih(linearalgebra):

More information

3 Conceptual Graphs and Cognitive Mapping

3 Conceptual Graphs and Cognitive Mapping 3 Concepual Graphs and Cogniive Mapping 3.01 Inroducion Chaper 2 provided iniial evidence ha concepual graphs are a suiable knowledge-based decision suppor ool for sraegic managemen accounans. This chaper

More information

MORPHOLOGICAL SEGMENTATION OF IMAGE SEQUENCES

MORPHOLOGICAL SEGMENTATION OF IMAGE SEQUENCES MORPHOLOGICAL SEGMENTATION OF IMAGE SEQUENCES B. MARCOTEGUI and F. MEYER Ecole des Mines de Paris, Cenre de Morphologie Mahémaique, 35, rue Sain-Honoré, F 77305 Fonainebleau Cedex, France Absrac. In image

More information

Time Expression Recognition Using a Constituent-based Tagging Scheme

Time Expression Recognition Using a Constituent-based Tagging Scheme Track: Web Conen Analysis, Semanics and Knowledge Time Expression Recogniion Using a Consiuen-based Tagging Scheme Xiaoshi Zhong and Erik Cambria School of Compuer Science and Engineering Nanyang Technological

More information

The Data Locality of Work Stealing

The Data Locality of Work Stealing The Daa Localiy of Work Sealing Umu A. Acar School of Compuer Science Carnegie Mellon Universiy umu@cs.cmu.edu Guy E. Blelloch School of Compuer Science Carnegie Mellon Universiy guyb@cs.cmu.edu Rober

More information

On Continuity of Complex Fuzzy Functions

On Continuity of Complex Fuzzy Functions Mahemaical Theory and Modeling www.iise.org On Coninuiy of Complex Fuzzy Funcions Pishiwan O. Sabir Deparmen of Mahemaics Faculy of Science and Science Educaion Universiy of Sulaimani Iraq pishiwan.sabir@gmail.com

More information

A Formalization of Ray Casting Optimization Techniques

A Formalization of Ray Casting Optimization Techniques A Formalizaion of Ray Casing Opimizaion Techniques J. Revelles, C. Ureña Dp. Lenguajes y Sisemas Informáicos, E.T.S.I. Informáica, Universiy of Granada, Spain e-mail: [jrevelle,almagro]@ugr.es URL: hp://giig.ugr.es

More information

Real Time Integral-Based Structural Health Monitoring

Real Time Integral-Based Structural Health Monitoring Real Time Inegral-Based Srucural Healh Monioring The nd Inernaional Conference on Sensing Technology ICST 7 J. G. Chase, I. Singh-Leve, C. E. Hann, X. Chen Deparmen of Mechanical Engineering, Universiy

More information

CS 152 Computer Architecture and Engineering. Lecture 7 - Memory Hierarchy-II

CS 152 Computer Architecture and Engineering. Lecture 7 - Memory Hierarchy-II CS 152 Compuer Archiecure and Engineering Lecure 7 - Memory Hierarchy-II Krse Asanovic Elecrical Engineering and Compuer Sciences Universiy of California a Berkeley hp://www.eecs.berkeley.edu/~krse hp://ins.eecs.berkeley.edu/~cs152

More information

An Improved Square-Root Nyquist Shaping Filter

An Improved Square-Root Nyquist Shaping Filter An Improved Square-Roo Nyquis Shaping Filer fred harris San Diego Sae Universiy fred.harris@sdsu.edu Sridhar Seshagiri San Diego Sae Universiy Seshigar.@engineering.sdsu.edu Chris Dick Xilinx Corp. chris.dick@xilinx.com

More information

Why Waste a Perfectly Good Abstraction?

Why Waste a Perfectly Good Abstraction? Why Wase a Perfecly Good Absracion? Arie Gurfinkel and Marsha Chechik Deparmen of Compuer Science, Universiy of Torono, Torono, ON M5S 3G4, Canada. Email: arie,chechik@cs.orono.edu Absrac. Sofware model-checking

More information

Quick Verification of Concurrent Programs by Iteratively Relaxed Scheduling

Quick Verification of Concurrent Programs by Iteratively Relaxed Scheduling Quick Verificaion of Concurren Programs by Ieraively Relaxed Scheduling Parick Mezler, Habib Saissi, Péer Bokor, Neeraj Suri Technische Univerisä Darmsad, Germany {mezler, saissi, pbokor, suri}@deeds.informaik.u-darmsad.de

More information

Motor Control. 5. Control. Motor Control. Motor Control

Motor Control. 5. Control. Motor Control. Motor Control 5. Conrol In his chaper we will do: Feedback Conrol On/Off Conroller PID Conroller Moor Conrol Why use conrol a all? Correc or wrong? Supplying a cerain volage / pulsewidh will make he moor spin a a cerain

More information

Lecture 18: Mix net Voting Systems

Lecture 18: Mix net Voting Systems 6.897: Advanced Topics in Crypography Apr 9, 2004 Lecure 18: Mix ne Voing Sysems Scribed by: Yael Tauman Kalai 1 Inroducion In he previous lecure, we defined he noion of an elecronic voing sysem, and specified

More information

M y. Image Warping. Targil 7 : Image Warping. Image Warping. 2D Geometric Transformations. image filtering: change range of image g(x) = T(f(x))

M y. Image Warping. Targil 7 : Image Warping. Image Warping. 2D Geometric Transformations. image filtering: change range of image g(x) = T(f(x)) Hebrew Universi Image Processing - 6 Image Warping Hebrew Universi Image Processing - 6 argil 7 : Image Warping D Geomeric ransormaions hp://www.jere-marin.com Man slides rom Seve Seiz and Aleei Eros Image

More information

A time-space consistency solution for hardware-in-the-loop simulation system

A time-space consistency solution for hardware-in-the-loop simulation system Inernaional Conference on Advanced Elecronic Science and Technology (AEST 206) A ime-space consisency soluion for hardware-in-he-loop simulaion sysem Zexin Jiang a Elecric Power Research Insiue of Guangdong

More information

Functional Programming. Pure Functional Languages

Functional Programming. Pure Functional Languages Functional Programming Pure functional PLs S-expressions cons, car, cdr Defining functions read-eval-print loop of Lisp interpreter Examples of recursive functions Shallow, deep Equality testing 1 Pure

More information

Querying Moving Objects in SECONDO

Querying Moving Objects in SECONDO Querying Moving Objecs in SECONDO Vicor Teixeira de Almeida, Ralf Harmu Güing, and Thomas Behr LG Daenbanksyseme für neue Anwendungen Fachbereich Informaik, Fernuniversiä Hagen D-58084 Hagen, Germany {vicor.almeida,

More information

BEST DYNAMICS NAMICS CRM A COMPILATION OF TECH-TIPS TO HELP YOUR BUSINESS SUCCEED WITH DYNAMICS CRM

BEST DYNAMICS NAMICS CRM A COMPILATION OF TECH-TIPS TO HELP YOUR BUSINESS SUCCEED WITH DYNAMICS CRM DYNAMICS CR A Publicaion by elogic s fines Microsof Dynamics CRM Expers { ICS CRM BEST OF 2014 A COMPILATION OF TECH-TIPS TO HELP YOUR BUSINESS SUCCEED WITH DYNAMICS CRM NAMICS CRM { DYNAMICS M INTRODUCTION

More information

arxiv: v1 [cs.na] 11 May 2017

arxiv: v1 [cs.na] 11 May 2017 Cache-oblivious Marix Muliplicaion for Exac Facorisaion arxiv:175.487v1 [cs.na] 11 May 217 Faima K. Abu Salem 1 Compuer Science Deparmen, American Universiy of Beiru, P. O. Box 11-236, Riad El Solh, Beiru

More information

Projection & Interaction

Projection & Interaction Projecion & Ineracion Algebra of projecion Canonical viewing volume rackball inerface ransform Hierarchies Preview of Assignmen #2 Lecure 8 Comp 236 Spring 25 Projecions Our lives are grealy simplified

More information

Test - Accredited Configuration Engineer (ACE) Exam - PAN-OS 6.0 Version

Test - Accredited Configuration Engineer (ACE) Exam - PAN-OS 6.0 Version Tes - Accredied Configuraion Engineer (ACE) Exam - PAN-OS 6.0 Version ACE Exam Quesion 1 of 50. Which of he following saemens is NOT abou Palo Alo Neworks firewalls? Sysem defauls may be resored by performing

More information

Flow graph/networks MAX FLOW APPLICATIONS. Flow constraints. Max flow problem 4/26/12

Flow graph/networks MAX FLOW APPLICATIONS. Flow constraints. Max flow problem 4/26/12 4// low graph/nework MX LOW PPLIION 30, pring 0 avid Kauchak low nework direced, weighed graph (V, ) poiive edge weigh indicaing he capaciy (generally, aume ineger) conain a ingle ource V wih no incoming

More information

Constant-Work-Space Algorithms for Shortest Paths in Trees and Simple Polygons

Constant-Work-Space Algorithms for Shortest Paths in Trees and Simple Polygons Journal of Graph Algorihms and Applicaions hp://jgaa.info/ vol. 15, no. 5, pp. 569 586 (2011) Consan-Work-Space Algorihms for Shores Pahs in Trees and Simple Polygons Tesuo Asano 1 Wolfgang Mulzer 2 Yajun

More information

Functional Programming. Pure Functional Languages

Functional Programming. Pure Functional Languages Functional Programming Pure functional PLs S-expressions cons, car, cdr Defining functions read-eval-print loop of Lisp interpreter Examples of recursive functions Shallow, deep Equality testing 1 Pure

More information

Nearest Keyword Search in XML Documents

Nearest Keyword Search in XML Documents Neares Keyword Search in XML Documens Yufei Tao Savros Papadopoulos Cheng Sheng Kosas Sefanidis Deparmen of Compuer Science and Engineering Chinese Universiy of Hong Kong New Terriories, Hong Kong {aoyf,

More information

Service Oriented Solution Modeling and Variation Propagation Analysis based on Architectural Building Blocks

Service Oriented Solution Modeling and Variation Propagation Analysis based on Architectural Building Blocks Carnegie Mellon Universiy From he SelecedWorks of Jia Zhang Ocober, 203 Service Oriened Soluion Modeling and Variaion Propagaion Analysis based on Archiecural uilding locks Liang-Jie Zhang Jia Zhang Available

More information

Chapter 3 MEDIA ACCESS CONTROL

Chapter 3 MEDIA ACCESS CONTROL Chaper 3 MEDIA ACCESS CONTROL Overview Moivaion SDMA, FDMA, TDMA Aloha Adapive Aloha Backoff proocols Reservaion schemes Polling Disribued Compuing Group Mobile Compuing Summer 2003 Disribued Compuing

More information

Video Content Description Using Fuzzy Spatio-Temporal Relations

Video Content Description Using Fuzzy Spatio-Temporal Relations Proceedings of he 4s Hawaii Inernaional Conference on Sysem Sciences - 008 Video Conen Descripion Using Fuzzy Spaio-Temporal Relaions rchana M. Rajurkar *, R.C. Joshi and Sananu Chaudhary 3 Dep of Compuer

More information

In fmri a Dual Echo Time EPI Pulse Sequence Can Induce Sources of Error in Dynamic Magnetic Field Maps

In fmri a Dual Echo Time EPI Pulse Sequence Can Induce Sources of Error in Dynamic Magnetic Field Maps In fmri a Dual Echo Time EPI Pulse Sequence Can Induce Sources of Error in Dynamic Magneic Field Maps A. D. Hahn 1, A. S. Nencka 1 and D. B. Rowe 2,1 1 Medical College of Wisconsin, Milwaukee, WI, Unied

More information

Less Pessimistic Worst-Case Delay Analysis for Packet-Switched Networks

Less Pessimistic Worst-Case Delay Analysis for Packet-Switched Networks Less Pessimisic Wors-Case Delay Analysis for Packe-Swiched Neworks Maias Wecksén Cenre for Research on Embedded Sysems P O Box 823 SE-31 18 Halmsad maias.wecksen@hh.se Magnus Jonsson Cenre for Research

More information

It is easier to visualize plotting the curves of cos x and e x separately: > plot({cos(x),exp(x)},x = -5*Pi..Pi,y = );

It is easier to visualize plotting the curves of cos x and e x separately: > plot({cos(x),exp(x)},x = -5*Pi..Pi,y = ); Mah 467 Homework Se : some soluions > wih(deools): wih(plos): Warning, he name changecoords has been redefined Problem :..7 Find he fixed poins, deermine heir sabiliy, for x( ) = cos x e x > plo(cos(x)

More information

Matlab5 5.3 symbolisches Lösen von DGLn

Matlab5 5.3 symbolisches Lösen von DGLn C:\Si5\Ingmah\symbmalab\DGLn_N4_2.doc, Seie /5 Prof. Dr. R. Kessler, Homepage: hp://www.home.hs-karlsruhe.de/~kero/ Malab5 5.3 symbolisches Lösen von DGLn % Beispiele aus Malab 4.3 Suden Ediion Handbuch

More information

Spline Curves. Color Interpolation. Normal Interpolation. Last Time? Today. glshademodel (GL_SMOOTH); Adjacency Data Structures. Mesh Simplification

Spline Curves. Color Interpolation. Normal Interpolation. Last Time? Today. glshademodel (GL_SMOOTH); Adjacency Data Structures. Mesh Simplification Las Time? Adjacency Daa Srucures Spline Curves Geomeric & opologic informaion Dynamic allocaion Efficiency of access Mesh Simplificaion edge collapse/verex spli geomorphs progressive ransmission view-dependen

More information

Landmarks: A New Model for Similarity-Based Pattern Querying in Time Series Databases

Landmarks: A New Model for Similarity-Based Pattern Querying in Time Series Databases Lmarks: A New Model for Similariy-Based Paern Querying in Time Series Daabases Chang-Shing Perng Haixun Wang Sylvia R. Zhang D. So Parker perng@cs.ucla.edu hxwang@cs.ucla.edu Sylvia Zhang@cle.com so@cs.ucla.edu

More information

Simple Network Management Based on PHP and SNMP

Simple Network Management Based on PHP and SNMP Simple Nework Managemen Based on PHP and SNMP Krasimir Trichkov, Elisavea Trichkova bsrac: This paper aims o presen simple mehod for nework managemen based on SNMP - managemen of Cisco rouer. The paper

More information

Difficulty-aware Hybrid Search in Peer-to-Peer Networks

Difficulty-aware Hybrid Search in Peer-to-Peer Networks Difficuly-aware Hybrid Search in Peer-o-Peer Neworks Hanhua Chen, Hai Jin, Yunhao Liu, Lionel M. Ni School of Compuer Science and Technology Huazhong Univ. of Science and Technology {chenhanhua, hjin}@hus.edu.cn

More information

Verified Validation of Lazy Code Motion

Verified Validation of Lazy Code Motion Verified Validaion of Lazy Code Moion Jean-Bapise Trisan, Xavier Leroy To cie his version: Jean-Bapise Trisan, Xavier Leroy. Verified Validaion of Lazy Code Moion. ACM SIGPLAN conference on Programming

More information

ISSN NII Technical Report. SWCLOS User's Manual. Seiji Koide communicated by Hideaki Takeda

ISSN NII Technical Report. SWCLOS User's Manual. Seiji Koide communicated by Hideaki Takeda ISSN 1346-5597 NII Technical Repor SWCLOS User's Manual Seiji Koide communicaed by Hideaki Takeda NII-2009-014E Oc. 2009 INDEX 1. Inroducion... 1 2. SWCLOS Basics... 2 2.1 How o Ge SWCLOS... 2 2.2 Proprieary

More information

Announcements. TCP Congestion Control. Goals of Today s Lecture. State Diagrams. TCP State Diagram

Announcements. TCP Congestion Control. Goals of Today s Lecture. State Diagrams. TCP State Diagram nnouncemens TCP Congesion Conrol Projec #3 should be ou onigh Can do individual or in a eam of 2 people Firs phase due November 16 - no slip days Exercise good (beer) ime managemen EE 122: Inro o Communicaion

More information