Memory Modeling in ESL-RTL Equivalence Checking

Size: px
Start display at page:

Download "Memory Modeling in ESL-RTL Equivalence Checking"

Transcription

1 11.4 Memory Modelng n ESL-RTL Equvalence Checkng Alfred Koelbl 2025 NW Cornelus Pass Rd. Hllsboro, OR koelbl@synopsys.com Jerry R. Burch 2025 NW Cornelus Pass Rd. Hllsboro, OR burch@synopsys.com Carl Pxley 2025 NW Cornelus Pass Rd. Hllsboro, OR cpxley@synopsys.com ABSTRACT When desgners create RTL models from a system-level specfcaton, arrays n the system-level model are often mplemented as memores n the RTL. Knowng the correspondence between ESL arrays and RTL memores can sgnfcantly reduce the complexty of a formal equvalence check between the ESL model and the RTL. In practce, however, handlng memory mappngs n ESL- RTL equvalence checkng s non-trval for the followng reasons: Frst, because of a lack of bt-accurate data-types n the systemlevel language, the nformaton stored n an array locaton may be stored n a compressed form n the RTL. Second, a sngle array n the ESL model may be mplemented by multple memores n the RTL and/or correspondng data tems may be stored n dfferent locatons. And last but not least, due to tmng dfferences between the ESL model and the RTL, the correspondence between arrays and memores may not hold n every clock cycle. In ths paper, we propose an approach to ESL-RTL equvalence checkng whch can deal wth all of these dffcultes. Categores and Subject Descrptors J.6 [Computer-Aded Engneerng]: Computer-Aded Desgn General Terms Algorthms, Verfcaton Keywords ESL, Equvalence checkng, Verfcaton, Memory 1. INTRODUCTION Wth the rsng complexty of modern embedded systems, a growng trend toward desgnng hardware at hgher levels of abstracton has emerged. Many companes have adopted a methodology that starts out wth a desgn specfcaton n a system-level programmng language lke C++. In ths phase, the focus s purely on algorthm desgn and desgn exploraton. A hgher abstracton level enables faster desgn changes and more thorough valdaton due Permsson to make dgtal or hard copes of all or part of ths work for personal or classroom use s granted wthout fee provded that copes are Permsson not made ortodstrbuted make dgtal for proft or hard or commercal copes of alladvantage or part ofand thsthat work copes for personal bear ths notce or classroom and theuse fulls ctaton granted onwthout the frstfee page. provded To copythat otherwse, copes are or not republsh, made or todstrbuted post on servers for proft or to redstrbute or commercal to lsts, advantage requres and pror thatspecfc copes bear permsson ths notce and/or anda the fee. full ctaton on the frst page. To copy otherwse, to republsh, DAC 2007, tojune post4 8, on servers 2007, San or todego, redstrbute Calforna, to lsts, USA. requres pror specfc permsson Copyrght 2007 and/or ACM a fee /07/ $5.00. DAC 2007, June 4 8, 2007, San Dego, Calforna, USA. Copyrght 2007 ACM ACM /07/ $5.00. to a hgher smulaton speed. By addng more and more mplementaton detals, the system-level specfcaton s then refned to a Regster-Transfer-Level (RTL) descrpton. Today, the prevalent technque for checkng f the resultng RTL comples wth the system-level specfcaton s smulaton. As exhaustve smulaton s not feasble for ndustral-szed desgns, subtle bugs n the desgn frequently reman undetected. Ths problem gves rse to the use of formal technques. Formal equvalence checkng can detect dscrepances whch are not detected n week long smulaton runs. Whereas formal equvalence checkng for RTL to RTL comparsons has been n producton use for many years now, ESL to RTL checkng s stll n ts nfancy. Unfortunately, formally provng the equvalence of an RTL aganst a system-level model s much harder than comparng two RTLs for equvalence, manly due to the ncredble amount of freedom desgners have n refnng the systemlevel model to the RTL. In ths paper, we focus on a specfc problem related to formal equvalence checkng of system-level models aganst RTL, namely the handlng of memores. Black-boxng memores as t s done n RTL-RTL equvalence checkng only works f the memory read and wrte patterns n both desgns match exactly. In general, ths s not the case n ESL equvalence checkng and a more sophstcated memory model that can reason about memory reads and wrtes s requred. However, smlar to regster mappng n RTL-RTL verfcaton, the equvalence check can be smplfed sgnfcantly f the mappng between ESL arrays and RTL memores s consdered. Unfortunately, even though most arrays n ESL models are mplemented by memores n the RTL, the number of dfferent possble mplementatons s huge. For effcency reasons, the memory layout may dffer, shadow regsters may be used to cache data or a sngle array may be splt nto multple memores n the RTL. In addton to that, tmng dfferences between the system-level model and the RTL usually make t necessary to detect at whch ponts n tme the arrays/memores match. Secton 3 dscusses all the features that a memory model should provde n order to be sutable for systemlevel equvalence checkng. We rely on the user to provde the nformaton about memory mappngs. If the mappng between the memores s known, the basc dea for provng the equvalence of both desgns s the followng: We assume that both desgns start wth matchng memores/arrays before the computaton. Then, both desgns perform a sngle transacton and we check f the results match. Fnally, we prove that the memores match agan after the transacton, whch makes t necessary to reason about the equalty of memores. The detaled proof procedure s descrbed n Secton

2 2. RELATED WORK Theores for reasonng about arrays/memores have been a research subject for a long tme [6], [7]. In 2001, Stump et al. [8] presented a paper on an extensonal theory of arrays. Extensonal theores formalze the ntuton that f two arrays store the same value at each array locaton, they are equvalent. Bradley et al. [1] further extend the theory of arrays by allowng quantfers. They show that ther fragment results n a complete satsfablty proof. Our approach for unversal quantfer elmnaton s based on ther work. The applcaton of ths memory model n formal equvalence checkng has been dscussed n many papers, related to ppelne verfcaton [3] and symbolc smulaton [9]. Bryant and Velev [2] made use of an effcent memory model n showng that two ppelned mcroprocessors, when started wth matchng memores produce the same results. Some recent papers descrbe clever encodngs of read/wrte formulas nto CNF [4], [5]. For example, Manolos et al. [5] presented an encodng that tres to mnmze the number of bts/clauses requred for modelng memores. Even though we don t deal wth ths problem, ther deas can potentally be appled to our approach, too. 3. REQUIREMENTS FOR MEMORIES In the rest of the paper, we don t dstngush between arrays and memores and refer to both of them as memores. The relatonshp between ESL and RTL memores s descrbed by a memory mappng: Defnton: Memory mappng A memory mappng MM s a unversally quantfed expresson over all memory locatons. It relates the contents of one memory to the contents of another memory (or several other memores). The memory mappng s expressed n terms of reads of both memores. Example: A one-to-one memory mappng between two memores M A and M B, both havng 10 elements, s descrbed by the followng expresson: MM(M A, M B):= read(m A, ) = read(m B, ) 0 <10 In Sectons 3.1 and 3.2 we descrbe memory mappngs for the followng cases: If the layout of both memores dffer. If a memory n one desgn s splt nto multple memores n the other desgn. If the same data s stored n dfferent addresses n both memores. Secton 3.3 deals wth non-mappng related constrants on memores. 3.1 Memory layout dfferences Dfferng memory layouts frequently occur when comparng a desgn specfed n a system-level language (e.g. C++) wth a desgn specfed at the regster-transfer level. Due to the lack of btaccurate data-types n the system-level language, a memory element may be represented wth more bts than actually needed. Consder for example the two memores M A and M B n Fg. 1. M A s a memory n a C++ desgn and M B s a memory n an RTL desgn. The layout of M A s determned by the C++ struct elem. Due to the lmted number of avalable data-types n C++, t may be necessary to represent a feld n the struct wth more bts than actually necessary. In ths partcular case, even though only three bts are used per element, they are stored n two character varables, resultng n a total of 16 bt storage. In the RTL memory on the other hand, the correspondng data s stored n a compressed format. The actual mappng between the bts n the C++ memory and the RTL memory s ndcated n Fg. 1. ESL desgn struct elem { char a; char b; }; elem MA[4]; Memory M A Memory M B RTL desgn reg [3:0] MB[2:0] Fgure 1: Mappng wth layout dfferences The mappng can be expressed as MM(M A, M B):= read(m A, )[7:0] = {6 d0, read(m B, )[2:1]} 0 <4 read(m A, )[15:8] = {7 d0, read(m B, )[0]} Havng the user specfy such a formula for more complex mappngs s very nconvenent. To deal wth ths ssue, we ntroduce "templates". For memory mappngs where the layout wthn each memory locaton s dfferent, the user can specfy a template whch descrbes the mappng wthn a sngle memory locaton. For the example n Fg. 1, the user would create the followng template t : template t { a = [2:1]; b = [0]; } Wth ths template, the mappng expresson smplfes to: MM(M A, M B):= read(m A, ) = template t (read(m B, )) 0 <4 3.2 Multple memores and address mappngs Memory mappngs can also be used to relate multple memores to each other. Also, correspondng data tems don t need to be stored at the same address n the memores. Consder for example the mappng n Fg. 2. The frst four memory locatons n memores M E, M F and M G are all mapped one-to-one. Locaton 5 n M E s mapped to locaton 4 n M F and locaton 6 n M E s mapped to locaton 4 n M G. A case lke ths sometmes occurs f a sngle memory n the system-level model (here M E) s splt nto multple memores n the RTL (here 206

3 Memory M E Memory M F Memory M G Fgure 2: Mappng between multple memores M F and M G) n order to ncrease memory access performance. The memory mappngs of ths example are descrbed by: MM(M F, M E):= read(m F, ) =(<4)? read(m E, ) : read(m E,5) 0 <5 MM(M G, M E):= read(m G, ) =(<4)? read(m E, ) : read(m E,6) 0 <5 3.3 Constrants on memores In addton to mappngs between memores t can be necessary to allow the user to defne constrants on the memory contents, for example f t s known that a memory can only hold certan datavalues. Furthermore, a constrant can also become part of a proof oblgaton, for example, f the correctness of the equvalence check requres that the memory content ends up wth a certan set of datavalues after the computaton. In our approach, the user can ether specfy constrants on ndvdual memory locatons or n a unversally quantfed form over all memory locatons. A constrant may also be expressed over multple memores. Examples: c 0 = (read(m A,3)=2) c 1 = (read(m A, ) < 3) c 2 = (read(m A, ) + read(m B, ) > read(m C, )) 4. PROOF PROCEDURE A common noton of equvalence between two desgns wth memores s transacton equvalence: Assumng that the desgns start out n a vald state, both desgns execute a sngle transacton. If both of them produce equvalent outputs on the way and end up n a vald state, the desgns are consdered equvalent. The proof method we use for provng transacton equvalence s nducton. In the nducton step, a vald startng state s assumed, the two desgns are unrolled for an entre transacton and the outputs at the end of the transacton are compared. Furthermore, the state n whch both desgns end up s compared aganst the startng state. The nducton base s requred f the startng state does not nclude the ntal state. In ths case, we addtonally need to prove equvalence of the desgns untl the state becomes a subset of the startng state. In descrbng the subsequent steps we assume that the ntal state s ncluded n the startng state and no nducton base s requred. The procedure s depcted n Fg. 3. In ths example, a transacton on the ESL model requres two cycles whereas the same transacton requres three cycles on the RTL. The two desgns are unrolled for two (ESL 0, ESL 1) and three tme-frames (RT L 0, RT L 1, RT L 2), respectvely. Both desgns start n a vald state (S A, M A) and (S B, M B)whereS A, S B denote the regster state and M A, M B denote the memory state of the correspondng desgn. Both desgns are fed wth equvalent nput data. However, due to tmng dfferences between both models, the nputs don t necessarly match one-to-one. For example, the ESL model mght receve the entre data at the same tme, whereas the RTL model mght receve t n seralzed form. In Fg. 3 ths s ndcated by nput assgnments I whch are not connected together. By unrollng both desgns, we can construct a formula for the outputs O A, O B, as well as for the state (S A, M A)and(S B, M B) after the transacton. The desgns are consdered to be equvalent f O A = O B and the combned states are vald states. I A0 S A M A I B0 S B M B ESL 0 I A1 I B1 Transacton T A ESL 1 I B2 RT L 0 RT L 1 RT L 2 Transacton T B Fgure 3: Proof procedure O A S A M A O B S B M B In order for the nducton proof to succeed, addtonal nductve nvarants may be requred. For example, even f we assume that the memores start out n the most general state, a successful equvalence check generally requres that ther contents match n both desgns. Memory mappngs and constrants as dscussed n Secton 3 provde such nvarants. From the nformaton the user supples,.e., constrants, templates and mappngs, we construct a system of assumpton formulas: Assumptons relatng the memores n both desgns. These assumptons nvolve all the user specfed memory mappngs: a 0 =MM 0(M A, M B) MM 1(M A, M B)... Constrants on the memores: a 1 = c 0(M A, M B) c 1(M A, M B)... Regster mappngs between the two desgns: a 2 = r 0(S A, S B) r 1(S A, S B)... Addtonal state nvarants gven by the user nvolvng memores and regsters: a 3 = 0(M A, M B, S A, S B)... Gven these assumptons, the followng proof oblgatons are requred for an equvalence check: Prove that the memory mappngs hold after the transacton: a 0 a 1 a 2 a 3 MM 0(M A, M B)... Prove that the constrants stll hold after the transacton: a 0 a 1 a 2 a 3 c 0(M A, M B) c 1(M A, M B)... Prove that the regster mappngs hold after the transacton: a 0 a 1 a 2 a 3 r 0(S A, S B) r 1(S A, S B)

4 Prove that the addtonal nvarants hold after the transacton: a 0 a 1 a 2 a 3 0(M A, M B, S A, S B)... Prove that no memory accesses are out-of-bounds. The behavor of an out-of-bounds array access s undefned n most system-level languages lke C++. Thus, for a correct equvalence check, we must make sure that ths never happens. Some of these formulas stll have unversal quantfers n them whch must be removed before they are handed over to a SAT solver. In addton to that, bt-blastng the memores s mpractcal for most desgns. Thus, we use a memory model whose sze only depends on the number of accesses, not on the actual sze of the memores. The algorthm for removng the quantfers and convertng the memores s outlned here: 1. Propagate reads over wrtes. Ths s done by applyng the followng rewrte rule on the formulas: read(wrte(m,, d), j) te( = j, d, read(m, j)) where s the address of the wrte, d s the wrtten data and j s the address of the read. Applyng ths rule successvely removes all wrtes to memores n the formulas. 2. Replace unversal quantfer varables on the rght-hand sde of a proof oblgaton by free varables and drop the quantfer. Because quantfers can only occur n the top-level conjuncton of the rght-hand sde, a (read(m A, ) = read(m B, ) s equvalent to a (read(m A, ) = read(m B, )) when gven to a valdty checker ( s a fresh free varable). The valdty proof only returns true f the formula s satsfed for all assgnments to. If bounds were gven for the quantfer varable, those bounds become part of the assumptons. 3. Expand assumpton quantfers. Removng unversal quantfers on the left-hand sde of a proof oblgaton,.e., an assumpton, can be done by expandng the quantfed expresson over all possble values of the quantfer varable: (read(m A, ) = read(m B, )) p s equvalent to read(m A, 0) = read(m B,0) read(m A, 1) = read(m B,1). read(m A, n) = read(m B,n) p In practce, t s usually not necessary to expand over all possble values of the quantfer varable. If a specfc value s never used n any other read, t can safely be dropped wthout compromsng completeness. In our approach, we use a smlar heurstc for computng suffcent quantfer varable values as n [1]. We collect all address expressons that are used n reads on memores, ncludng the fresh varables ntroduced n removng the rght-hand sde quantfers. The assumpton quantfers are then expanded for all those address expressons. Consder for example the followng formula: (read(m A, ) = read(m B, )) (read(m A, j) < 2) j read(m A, 4) + read(m B, a) < 3 Both quantfers are expanded wth the read addresses a and 4 : read(m A, a) = read(m B, a) read(m A, 4) = read(m B,4) read(m A, a) < 2 read(m A,4)< 2 read(m A, 4) + read(m B, a) < 3 4. Perform completeness check. Because we allow general expressons n mappngs, the heurstc used n expandng assumpton quantfers may not be complete (but not unsound!). Consder for example the followng mappng: (read(m A, +1) = read(m B, +1) read(m B,1)=1 read(m A,1)=1 Wth the gven heurstc, the formula s expanded nto (read(m A, 2) = read(m B,2)) read(m B,1)=1 read(m A,1)=1, whch obvously wll produce a false counter-example. The heurstc used n expandng assumpton quantfers s only complete for certan cases. For example, f the address of all reads n quantfed expressons s the quantfer varable tself (all reads have the form read(m, )), the heurstc s complete. In our approach, we detect cases for whch we know that the result s complete. For all other cases, we flag a warnng to the user. The completeness check s based on the work n [1]. 5. Replace reads by free varables. At ths pont, the formulas are free of quantfers. The only memory operatons stll left are reads on memores. In ths last step, we replace reads by free varables. Multplexers are ntroduced whch mantan the equvalence relatonshps between reads. For example, f there are three reads read(m, a), read(m, b), read(m, c) n the formulas, they are rewrtten nto: read(m, a) v 1 read(m, b) te(b = a, v 1, v 2) read(m, c) te(c = a, v 1, te(c = b, v 2, v 3) 6. Prove formulas usng a valdty checker. In our approach, we convert the problem nto a satsfablty problem and solve t usng a SAT solver. 5. TIMING DIFFERENCES In the proof procedure n Secton 4, we assumed that the memory mappngs hold before the transacton s started. Ths s not always the case. For example, when comparng a non-ppelned ESL desgn aganst a ppelned RTL desgns, the memores at the begnnng of a transacton may not match up because the RTL may stll have a prevous transacton n-flght whch has not yet commtted ts result to memory. However, both desgns can stll be equvalent f the memores match up rght before the current RTL transacton wrtes to memory. In essence, ths means that there exsts a memory mappng between the ESL model and the RTL at dfferent tme steps. In the example n Fg. 4, the ESL model computes an entre transacton n a sngle cycle whereas the RTL s a ppelned desgn wth three stages. The wrte to memory happens n stage three. If both desgns start out wth matchng memores at tme zero, the ESL desgn already wrtes ts frst result at the end 208

5 M A M B t=0 Intal state t=1 t=2 t=3 w T 1 w T 2 w T 3 w T 4 w T 5 w T 6 w T 1 t=4 t=5 w T 2 w T 3 w T 4 Fgure 4: Mappng wth tmng dfferences ESL RTL of the frst cycle (w T 1) whereas the RTL has only fnshed the frst stage. Thus, memory M B at tme-step 1 s stll equvalent to M A at tme-step 0 (depcted by the dashed lne n Fg. 4. In the second cycle, the ESL wrtes yet another result to memory (w T 2) whereas n the RTL, the wrte of the frst transacton stll hasn t happened yet. Thus, memory M B at tme-step 2 s stll equvalent to M A at tme-step 0. Fnally, n the thrd cycle, the RTL wrtes the frst result to memory. From there on, each of the desgns produces a new result every cycle, wth the dfference that the memory M B at tme-step t corresponds to memory M A at tme-step t-2. The proof procedure does not need to be fundamentally changed to handle tmng dfferences. Because we re operatng on an unrolled model, we have access to the state of the desgn n several tme frames. The only dfference s that our memory mappngs now have tme as addtonal parameter. MM(M A, M B, t):= (read(m A(t 2), ) = read(m B(t), )) When computng the formulas, t must be confrmed that when referrng to M A and M B, the correct tme frames n the unrolled model are chosen. Another dffculty that arses s that now the nducton base becomes necessary. Frst of all, we need to ensure that the gven mappng really holds after the desgn has settled and second, we need to make sure that the desgns are ndeed equvalent n the frst few cycles untl the mappng stablzes. 6. EXPERIMENTAL RESULTS The memory modelng s mplemented n our C++ to RTL equvalence checker Hector. It has been used on a number of ndustral desgns whch all contan memores. The C++ as well as the RTL were hand-coded by dfferent desgners, so they dffer rather substantally. In order to prove the desgns equvalent, all of the features of our memory model,.e., templates, mappngs between multple memores and quantfed constrants had to be used. They were provded by the desgners who knew exactly how the C++ arrays and the RTL memores were related. Table 1 presents the results. The second and thrd columns show the number of lnes of code of the C++ and the RTL code, respectvely. These numbers are approxmate numbers because we ddn t count code n lbrares. The fourth column contans the number of memores. The frst number s the number of memores n the C++, the second number s the number of memores n the RTL. Column fve shows the number of dscrepances that were found usng Hector. Some of the dscrepances were caused by mssng constrants, some turned out to be real bugs. The actual number of bugs found s shown n column sx. Column seven gves the tme requred for the proof and column 6 shows the fnal result. All desgns could be proven correct (after fxng the bugs) except desgn D5. For D5, Hector could prove most of the outputs correct except for a few where t found counter-examples. All output checks were conclusve, though, whch means we ether got a proof or a counter-example. 7. CONCLUSION We have dscussed several problems that occur when formally checkng the equvalence of an RTL model wth memores aganst ts ESL specfcaton. Specfcally, due to mplementaton decsons, the memory layouts may dffer or constrants may be requred whch can only be formulated by unversally quantfed expressons on the memores. We have presented a proof approach for transacton equvalent desgns wth memores. The dea s to use memory mappngs provded by the user as nvarants for an nducton proof. Fnally, we ve demonstrated the practcalty of the approach by applyng t to several ndustral desgns. 8. REFERENCES [1] A. R. Bradley, Z. Manna, and H. B. Spma. What s decdable about arrays? In VMCAI, pages , [2] R. E. Bryant and M. N. Velev. Verfcaton of ppelned mcroprocessors by comparng memory executon sequences n symbolc smulaton. In ASIAN 97: Proceedngs of the Thrd Asan Computng Scence Conference on Advances n Computng Scence, pages Sprnger-Verlag, [3] J. R. Burch and D. L. Dll. Automatc verfcaton of ppelned mcroprocessor control. In CAV, pages 68 80, [4] M. K. Gana, A. Gupta, and P. Ashar. Verfcaton of embedded memory systems usng effcent memory modelng. In DATE 05: Proceedngs of the conference on Desgn, Automaton and Test n Europe, pages IEEE Computer Socety, [5] P. Manolos, S. K. Srnvasan, and D. Vroon. Automatc memory reductons for rtl model verfcaton. In ICCAD 2006: ACM-IEEE Internatonal Conference on Computer Aded Desgn, [6] J. McCarthy. Towards a mathematcal scence of computaton. In IFIP Congress, pages 21 28, [7] G. Nelson and D. C. Oppen. Smplfcaton by cooperatng decson procedures. ACM Trans. Program. Lang. Syst., 1(2): , [8] A. Stump, C. W. Barrett, D. L. Dll, and J. R. Levtt. A decson procedure for an extensonal theory of arrays. In Logc n Computer Scence, pages 29 37, [9] M. N. Velev, R. E. Bryant, and A. Jan. Effcent modelng of memory arrays n symbolc smulaton. In CAV 97: Proceedngs of the 9th Internatonal Conference on Computer Aded Verfcaton, pages Sprnger-Verlag, Desgn #LOC C++ #LOC RTL #MEMs #DIS #BUGS tme result D / mn proven D / mn proven D / mn proven D /4 8 2 <1h proven D /33 > mn proven or cex Table 1: Equvalence check of desgns wth memores 209

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz Compler Desgn Sprng 2014 Regster Allocaton Sample Exercses and Solutons Prof. Pedro C. Dnz USC / Informaton Scences Insttute 4676 Admralty Way, Sute 1001 Marna del Rey, Calforna 90292 pedro@s.edu Regster

More information

For instance, ; the five basic number-sets are increasingly more n A B & B A A = B (1)

For instance, ; the five basic number-sets are increasingly more n A B & B A A = B (1) Secton 1.2 Subsets and the Boolean operatons on sets If every element of the set A s an element of the set B, we say that A s a subset of B, or that A s contaned n B, or that B contans A, and we wrte A

More information

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009.

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009. Farrukh Jabeen Algorthms 51 Assgnment #2 Due Date: June 15, 29. Assgnment # 2 Chapter 3 Dscrete Fourer Transforms Implement the FFT for the DFT. Descrbed n sectons 3.1 and 3.2. Delverables: 1. Concse descrpton

More information

An Optimal Algorithm for Prufer Codes *

An Optimal Algorithm for Prufer Codes * J. Software Engneerng & Applcatons, 2009, 2: 111-115 do:10.4236/jsea.2009.22016 Publshed Onlne July 2009 (www.scrp.org/journal/jsea) An Optmal Algorthm for Prufer Codes * Xaodong Wang 1, 2, Le Wang 3,

More information

Problem Set 3 Solutions

Problem Set 3 Solutions Introducton to Algorthms October 4, 2002 Massachusetts Insttute of Technology 6046J/18410J Professors Erk Demane and Shaf Goldwasser Handout 14 Problem Set 3 Solutons (Exercses were not to be turned n,

More information

CMPS 10 Introduction to Computer Science Lecture Notes

CMPS 10 Introduction to Computer Science Lecture Notes CPS 0 Introducton to Computer Scence Lecture Notes Chapter : Algorthm Desgn How should we present algorthms? Natural languages lke Englsh, Spansh, or French whch are rch n nterpretaton and meanng are not

More information

Sum of Linear and Fractional Multiobjective Programming Problem under Fuzzy Rules Constraints

Sum of Linear and Fractional Multiobjective Programming Problem under Fuzzy Rules Constraints Australan Journal of Basc and Appled Scences, 2(4): 1204-1208, 2008 ISSN 1991-8178 Sum of Lnear and Fractonal Multobjectve Programmng Problem under Fuzzy Rules Constrants 1 2 Sanjay Jan and Kalash Lachhwan

More information

Mathematics 256 a course in differential equations for engineering students

Mathematics 256 a course in differential equations for engineering students Mathematcs 56 a course n dfferental equatons for engneerng students Chapter 5. More effcent methods of numercal soluton Euler s method s qute neffcent. Because the error s essentally proportonal to the

More information

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields 17 th European Symposum on Computer Aded Process Engneerng ESCAPE17 V. Plesu and P.S. Agach (Edtors) 2007 Elsever B.V. All rghts reserved. 1 A mathematcal programmng approach to the analyss, desgn and

More information

The Codesign Challenge

The Codesign Challenge ECE 4530 Codesgn Challenge Fall 2007 Hardware/Software Codesgn The Codesgn Challenge Objectves In the codesgn challenge, your task s to accelerate a gven software reference mplementaton as fast as possble.

More information

Parallelism for Nested Loops with Non-uniform and Flow Dependences

Parallelism for Nested Loops with Non-uniform and Flow Dependences Parallelsm for Nested Loops wth Non-unform and Flow Dependences Sam-Jn Jeong Dept. of Informaton & Communcaton Engneerng, Cheonan Unversty, 5, Anseo-dong, Cheonan, Chungnam, 330-80, Korea. seong@cheonan.ac.kr

More information

ELEC 377 Operating Systems. Week 6 Class 3

ELEC 377 Operating Systems. Week 6 Class 3 ELEC 377 Operatng Systems Week 6 Class 3 Last Class Memory Management Memory Pagng Pagng Structure ELEC 377 Operatng Systems Today Pagng Szes Vrtual Memory Concept Demand Pagng ELEC 377 Operatng Systems

More information

A Binarization Algorithm specialized on Document Images and Photos

A Binarization Algorithm specialized on Document Images and Photos A Bnarzaton Algorthm specalzed on Document mages and Photos Ergna Kavalleratou Dept. of nformaton and Communcaton Systems Engneerng Unversty of the Aegean kavalleratou@aegean.gr Abstract n ths paper, a

More information

6.854 Advanced Algorithms Petar Maymounkov Problem Set 11 (November 23, 2005) With: Benjamin Rossman, Oren Weimann, and Pouya Kheradpour

6.854 Advanced Algorithms Petar Maymounkov Problem Set 11 (November 23, 2005) With: Benjamin Rossman, Oren Weimann, and Pouya Kheradpour 6.854 Advanced Algorthms Petar Maymounkov Problem Set 11 (November 23, 2005) Wth: Benjamn Rossman, Oren Wemann, and Pouya Kheradpour Problem 1. We reduce vertex cover to MAX-SAT wth weghts, such that the

More information

Assembler. Building a Modern Computer From First Principles.

Assembler. Building a Modern Computer From First Principles. Assembler Buldng a Modern Computer From Frst Prncples www.nand2tetrs.org Elements of Computng Systems, Nsan & Schocken, MIT Press, www.nand2tetrs.org, Chapter 6: Assembler slde Where we are at: Human Thought

More information

Assembler. Shimon Schocken. Spring Elements of Computing Systems 1 Assembler (Ch. 6) Compiler. abstract interface.

Assembler. Shimon Schocken. Spring Elements of Computing Systems 1 Assembler (Ch. 6) Compiler. abstract interface. IDC Herzlya Shmon Schocken Assembler Shmon Schocken Sprng 2005 Elements of Computng Systems 1 Assembler (Ch. 6) Where we are at: Human Thought Abstract desgn Chapters 9, 12 abstract nterface H.L. Language

More information

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search Sequental search Buldng Java Programs Chapter 13 Searchng and Sortng sequental search: Locates a target value n an array/lst by examnng each element from start to fnsh. How many elements wll t need to

More information

Brave New World Pseudocode Reference

Brave New World Pseudocode Reference Brave New World Pseudocode Reference Pseudocode s a way to descrbe how to accomplsh tasks usng basc steps lke those a computer mght perform. In ths week s lab, you'll see how a form of pseudocode can be

More information

Complex Numbers. Now we also saw that if a and b were both positive then ab = a b. For a second let s forget that restriction and do the following.

Complex Numbers. Now we also saw that if a and b were both positive then ab = a b. For a second let s forget that restriction and do the following. Complex Numbers The last topc n ths secton s not really related to most of what we ve done n ths chapter, although t s somewhat related to the radcals secton as we wll see. We also won t need the materal

More information

Hermite Splines in Lie Groups as Products of Geodesics

Hermite Splines in Lie Groups as Products of Geodesics Hermte Splnes n Le Groups as Products of Geodescs Ethan Eade Updated May 28, 2017 1 Introducton 1.1 Goal Ths document defnes a curve n the Le group G parametrzed by tme and by structural parameters n the

More information

Load Balancing for Hex-Cell Interconnection Network

Load Balancing for Hex-Cell Interconnection Network Int. J. Communcatons, Network and System Scences,,, - Publshed Onlne Aprl n ScRes. http://www.scrp.org/journal/jcns http://dx.do.org/./jcns.. Load Balancng for Hex-Cell Interconnecton Network Saher Manaseer,

More information

Parallel matrix-vector multiplication

Parallel matrix-vector multiplication Appendx A Parallel matrx-vector multplcaton The reduced transton matrx of the three-dmensonal cage model for gel electrophoress, descrbed n secton 3.2, becomes excessvely large for polymer lengths more

More information

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS ARPN Journal of Engneerng and Appled Scences 006-017 Asan Research Publshng Network (ARPN). All rghts reserved. NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS Igor Grgoryev, Svetlana

More information

Cluster Analysis of Electrical Behavior

Cluster Analysis of Electrical Behavior Journal of Computer and Communcatons, 205, 3, 88-93 Publshed Onlne May 205 n ScRes. http://www.scrp.org/ournal/cc http://dx.do.org/0.4236/cc.205.350 Cluster Analyss of Electrcal Behavor Ln Lu Ln Lu, School

More information

Chapter 6 Programmng the fnte element method Inow turn to the man subject of ths book: The mplementaton of the fnte element algorthm n computer programs. In order to make my dscusson as straghtforward

More information

A RECONFIGURABLE ARCHITECTURE FOR MULTI-GIGABIT SPEED CONTENT-BASED ROUTING. James Moscola, Young H. Cho, John W. Lockwood

A RECONFIGURABLE ARCHITECTURE FOR MULTI-GIGABIT SPEED CONTENT-BASED ROUTING. James Moscola, Young H. Cho, John W. Lockwood A RECONFIGURABLE ARCHITECTURE FOR MULTI-GIGABIT SPEED CONTENT-BASED ROUTING James Moscola, Young H. Cho, John W. Lockwood Dept. of Computer Scence and Engneerng Washngton Unversty, St. Lous, MO {jmm5,

More information

Wishing you all a Total Quality New Year!

Wishing you all a Total Quality New Year! Total Qualty Management and Sx Sgma Post Graduate Program 214-15 Sesson 4 Vnay Kumar Kalakband Assstant Professor Operatons & Systems Area 1 Wshng you all a Total Qualty New Year! Hope you acheve Sx sgma

More information

Harvard University CS 101 Fall 2005, Shimon Schocken. Assembler. Elements of Computing Systems 1 Assembler (Ch. 6)

Harvard University CS 101 Fall 2005, Shimon Schocken. Assembler. Elements of Computing Systems 1 Assembler (Ch. 6) Harvard Unversty CS 101 Fall 2005, Shmon Schocken Assembler Elements of Computng Systems 1 Assembler (Ch. 6) Why care about assemblers? Because Assemblers employ some nfty trcks Assemblers are the frst

More information

Solving two-person zero-sum game by Matlab

Solving two-person zero-sum game by Matlab Appled Mechancs and Materals Onlne: 2011-02-02 ISSN: 1662-7482, Vols. 50-51, pp 262-265 do:10.4028/www.scentfc.net/amm.50-51.262 2011 Trans Tech Publcatons, Swtzerland Solvng two-person zero-sum game by

More information

Meta-heuristics for Multidimensional Knapsack Problems

Meta-heuristics for Multidimensional Knapsack Problems 2012 4th Internatonal Conference on Computer Research and Development IPCSIT vol.39 (2012) (2012) IACSIT Press, Sngapore Meta-heurstcs for Multdmensonal Knapsack Problems Zhbao Man + Computer Scence Department,

More information

R s s f. m y s. SPH3UW Unit 7.3 Spherical Concave Mirrors Page 1 of 12. Notes

R s s f. m y s. SPH3UW Unit 7.3 Spherical Concave Mirrors Page 1 of 12. Notes SPH3UW Unt 7.3 Sphercal Concave Mrrors Page 1 of 1 Notes Physcs Tool box Concave Mrror If the reflectng surface takes place on the nner surface of the sphercal shape so that the centre of the mrror bulges

More information

Related-Mode Attacks on CTR Encryption Mode

Related-Mode Attacks on CTR Encryption Mode Internatonal Journal of Network Securty, Vol.4, No.3, PP.282 287, May 2007 282 Related-Mode Attacks on CTR Encrypton Mode Dayn Wang, Dongda Ln, and Wenlng Wu (Correspondng author: Dayn Wang) Key Laboratory

More information

Subspace clustering. Clustering. Fundamental to all clustering techniques is the choice of distance measure between data points;

Subspace clustering. Clustering. Fundamental to all clustering techniques is the choice of distance measure between data points; Subspace clusterng Clusterng Fundamental to all clusterng technques s the choce of dstance measure between data ponts; D q ( ) ( ) 2 x x = x x, j k = 1 k jk Squared Eucldean dstance Assumpton: All features

More information

Support Vector Machines

Support Vector Machines /9/207 MIST.6060 Busness Intellgence and Data Mnng What are Support Vector Machnes? Support Vector Machnes Support Vector Machnes (SVMs) are supervsed learnng technques that analyze data and recognze patterns.

More information

A Fast Content-Based Multimedia Retrieval Technique Using Compressed Data

A Fast Content-Based Multimedia Retrieval Technique Using Compressed Data A Fast Content-Based Multmeda Retreval Technque Usng Compressed Data Borko Furht and Pornvt Saksobhavvat NSF Multmeda Laboratory Florda Atlantc Unversty, Boca Raton, Florda 3343 ABSTRACT In ths paper,

More information

Today s Outline. Sorting: The Big Picture. Why Sort? Selection Sort: Idea. Insertion Sort: Idea. Sorting Chapter 7 in Weiss.

Today s Outline. Sorting: The Big Picture. Why Sort? Selection Sort: Idea. Insertion Sort: Idea. Sorting Chapter 7 in Weiss. Today s Outlne Sortng Chapter 7 n Wess CSE 26 Data Structures Ruth Anderson Announcements Wrtten Homework #6 due Frday 2/26 at the begnnng of lecture Proect Code due Mon March 1 by 11pm Today s Topcs:

More information

Type-2 Fuzzy Non-uniform Rational B-spline Model with Type-2 Fuzzy Data

Type-2 Fuzzy Non-uniform Rational B-spline Model with Type-2 Fuzzy Data Malaysan Journal of Mathematcal Scences 11(S) Aprl : 35 46 (2017) Specal Issue: The 2nd Internatonal Conference and Workshop on Mathematcal Analyss (ICWOMA 2016) MALAYSIAN JOURNAL OF MATHEMATICAL SCIENCES

More information

SLAM Summer School 2006 Practical 2: SLAM using Monocular Vision

SLAM Summer School 2006 Practical 2: SLAM using Monocular Vision SLAM Summer School 2006 Practcal 2: SLAM usng Monocular Vson Javer Cvera, Unversty of Zaragoza Andrew J. Davson, Imperal College London J.M.M Montel, Unversty of Zaragoza. josemar@unzar.es, jcvera@unzar.es,

More information

Steps for Computing the Dissimilarity, Entropy, Herfindahl-Hirschman and. Accessibility (Gravity with Competition) Indices

Steps for Computing the Dissimilarity, Entropy, Herfindahl-Hirschman and. Accessibility (Gravity with Competition) Indices Steps for Computng the Dssmlarty, Entropy, Herfndahl-Hrschman and Accessblty (Gravty wth Competton) Indces I. Dssmlarty Index Measurement: The followng formula can be used to measure the evenness between

More information

Array transposition in CUDA shared memory

Array transposition in CUDA shared memory Array transposton n CUDA shared memory Mke Gles February 19, 2014 Abstract Ths short note s nspred by some code wrtten by Jeremy Appleyard for the transposton of data through shared memory. I had some

More information

An Iterative Solution Approach to Process Plant Layout using Mixed Integer Optimisation

An Iterative Solution Approach to Process Plant Layout using Mixed Integer Optimisation 17 th European Symposum on Computer Aded Process Engneerng ESCAPE17 V. Plesu and P.S. Agach (Edtors) 2007 Elsever B.V. All rghts reserved. 1 An Iteratve Soluton Approach to Process Plant Layout usng Mxed

More information

Transaction-Consistent Global Checkpoints in a Distributed Database System

Transaction-Consistent Global Checkpoints in a Distributed Database System Proceedngs of the World Congress on Engneerng 2008 Vol I Transacton-Consstent Global Checkponts n a Dstrbuted Database System Jang Wu, D. Manvannan and Bhavan Thurasngham Abstract Checkpontng and rollback

More information

AADL : about scheduling analysis

AADL : about scheduling analysis AADL : about schedulng analyss Schedulng analyss, what s t? Embedded real-tme crtcal systems have temporal constrants to meet (e.g. deadlne). Many systems are bult wth operatng systems provdng multtaskng

More information

CSCI 104 Sorting Algorithms. Mark Redekopp David Kempe

CSCI 104 Sorting Algorithms. Mark Redekopp David Kempe CSCI 104 Sortng Algorthms Mark Redekopp Davd Kempe Algorthm Effcency SORTING 2 Sortng If we have an unordered lst, sequental search becomes our only choce If we wll perform a lot of searches t may be benefcal

More information

Storage Binding in RTL synthesis

Storage Binding in RTL synthesis Storage Bndng n RTL synthess Pe Zhang Danel D. Gajsk Techncal Report ICS-0-37 August 0th, 200 Center for Embedded Computer Systems Department of Informaton and Computer Scence Unersty of Calforna, Irne

More information

Parameter estimation for incomplete bivariate longitudinal data in clinical trials

Parameter estimation for incomplete bivariate longitudinal data in clinical trials Parameter estmaton for ncomplete bvarate longtudnal data n clncal trals Naum M. Khutoryansky Novo Nordsk Pharmaceutcals, Inc., Prnceton, NJ ABSTRACT Bvarate models are useful when analyzng longtudnal data

More information

Programming in Fortran 90 : 2017/2018

Programming in Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Exercse 1 : Evaluaton of functon dependng on nput Wrte a program who evaluate the functon f (x,y) for any two user specfed values

More information

Data Representation in Digital Design, a Single Conversion Equation and a Formal Languages Approach

Data Representation in Digital Design, a Single Conversion Equation and a Formal Languages Approach Data Representaton n Dgtal Desgn, a Sngle Converson Equaton and a Formal Languages Approach Hassan Farhat Unversty of Nebraska at Omaha Abstract- In the study of data representaton n dgtal desgn and computer

More information

Repeater Insertion for Two-Terminal Nets in Three-Dimensional Integrated Circuits

Repeater Insertion for Two-Terminal Nets in Three-Dimensional Integrated Circuits Repeater Inserton for Two-Termnal Nets n Three-Dmensonal Integrated Crcuts Hu Xu, Vasls F. Pavlds, and Govann De Mchel LSI - EPFL, CH-5, Swtzerland, {hu.xu,vasleos.pavlds,govann.demchel}@epfl.ch Abstract.

More information

Analysis of Continuous Beams in General

Analysis of Continuous Beams in General Analyss of Contnuous Beams n General Contnuous beams consdered here are prsmatc, rgdly connected to each beam segment and supported at varous ponts along the beam. onts are selected at ponts of support,

More information

User Authentication Based On Behavioral Mouse Dynamics Biometrics

User Authentication Based On Behavioral Mouse Dynamics Biometrics User Authentcaton Based On Behavoral Mouse Dynamcs Bometrcs Chee-Hyung Yoon Danel Donghyun Km Department of Computer Scence Department of Computer Scence Stanford Unversty Stanford Unversty Stanford, CA

More information

Content Based Image Retrieval Using 2-D Discrete Wavelet with Texture Feature with Different Classifiers

Content Based Image Retrieval Using 2-D Discrete Wavelet with Texture Feature with Different Classifiers IOSR Journal of Electroncs and Communcaton Engneerng (IOSR-JECE) e-issn: 78-834,p- ISSN: 78-8735.Volume 9, Issue, Ver. IV (Mar - Apr. 04), PP 0-07 Content Based Image Retreval Usng -D Dscrete Wavelet wth

More information

Virtual Memory. Background. No. 10. Virtual Memory: concept. Logical Memory Space (review) Demand Paging(1) Virtual Memory

Virtual Memory. Background. No. 10. Virtual Memory: concept. Logical Memory Space (review) Demand Paging(1) Virtual Memory Background EECS. Operatng System Fundamentals No. Vrtual Memory Prof. Hu Jang Department of Electrcal Engneerng and Computer Scence, York Unversty Memory-management methods normally requres the entre process

More information

Tsinghua University at TAC 2009: Summarizing Multi-documents by Information Distance

Tsinghua University at TAC 2009: Summarizing Multi-documents by Information Distance Tsnghua Unversty at TAC 2009: Summarzng Mult-documents by Informaton Dstance Chong Long, Mnle Huang, Xaoyan Zhu State Key Laboratory of Intellgent Technology and Systems, Tsnghua Natonal Laboratory for

More information

Explicit Formulas and Efficient Algorithm for Moment Computation of Coupled RC Trees with Lumped and Distributed Elements

Explicit Formulas and Efficient Algorithm for Moment Computation of Coupled RC Trees with Lumped and Distributed Elements Explct Formulas and Effcent Algorthm for Moment Computaton of Coupled RC Trees wth Lumped and Dstrbuted Elements Qngan Yu and Ernest S.Kuh Electroncs Research Lab. Unv. of Calforna at Berkeley Berkeley

More information

Helsinki University Of Technology, Systems Analysis Laboratory Mat Independent research projects in applied mathematics (3 cr)

Helsinki University Of Technology, Systems Analysis Laboratory Mat Independent research projects in applied mathematics (3 cr) Helsnk Unversty Of Technology, Systems Analyss Laboratory Mat-2.08 Independent research projects n appled mathematcs (3 cr) "! #$&% Antt Laukkanen 506 R ajlaukka@cc.hut.f 2 Introducton...3 2 Multattrbute

More information

Lecture 5: Multilayer Perceptrons

Lecture 5: Multilayer Perceptrons Lecture 5: Multlayer Perceptrons Roger Grosse 1 Introducton So far, we ve only talked about lnear models: lnear regresson and lnear bnary classfers. We noted that there are functons that can t be represented

More information

An Application of the Dulmage-Mendelsohn Decomposition to Sparse Null Space Bases of Full Row Rank Matrices

An Application of the Dulmage-Mendelsohn Decomposition to Sparse Null Space Bases of Full Row Rank Matrices Internatonal Mathematcal Forum, Vol 7, 2012, no 52, 2549-2554 An Applcaton of the Dulmage-Mendelsohn Decomposton to Sparse Null Space Bases of Full Row Rank Matrces Mostafa Khorramzadeh Department of Mathematcal

More information

2x x l. Module 3: Element Properties Lecture 4: Lagrange and Serendipity Elements

2x x l. Module 3: Element Properties Lecture 4: Lagrange and Serendipity Elements Module 3: Element Propertes Lecture : Lagrange and Serendpty Elements 5 In last lecture note, the nterpolaton functons are derved on the bass of assumed polynomal from Pascal s trangle for the fled varable.

More information

Solutions to Programming Assignment Five Interpolation and Numerical Differentiation

Solutions to Programming Assignment Five Interpolation and Numerical Differentiation College of Engneerng and Coputer Scence Mechancal Engneerng Departent Mechancal Engneerng 309 Nuercal Analyss of Engneerng Systes Sprng 04 Nuber: 537 Instructor: Larry Caretto Solutons to Prograng Assgnent

More information

CHAPTER 2 DECOMPOSITION OF GRAPHS

CHAPTER 2 DECOMPOSITION OF GRAPHS CHAPTER DECOMPOSITION OF GRAPHS. INTRODUCTION A graph H s called a Supersubdvson of a graph G f H s obtaned from G by replacng every edge uv of G by a bpartte graph,m (m may vary for each edge by dentfyng

More information

CACHE MEMORY DESIGN FOR INTERNET PROCESSORS

CACHE MEMORY DESIGN FOR INTERNET PROCESSORS CACHE MEMORY DESIGN FOR INTERNET PROCESSORS WE EVALUATE A SERIES OF THREE PROGRESSIVELY MORE AGGRESSIVE ROUTING-TABLE CACHE DESIGNS AND DEMONSTRATE THAT THE INCORPORATION OF HARDWARE CACHES INTO INTERNET

More information

Concurrent models of computation for embedded software

Concurrent models of computation for embedded software Concurrent models of computaton for embedded software and hardware! Researcher overvew what t looks lke semantcs what t means and how t relates desgnng an actor language actor propertes and how to represent

More information

A MOVING MESH APPROACH FOR SIMULATION BUDGET ALLOCATION ON CONTINUOUS DOMAINS

A MOVING MESH APPROACH FOR SIMULATION BUDGET ALLOCATION ON CONTINUOUS DOMAINS Proceedngs of the Wnter Smulaton Conference M E Kuhl, N M Steger, F B Armstrong, and J A Jones, eds A MOVING MESH APPROACH FOR SIMULATION BUDGET ALLOCATION ON CONTINUOUS DOMAINS Mark W Brantley Chun-Hung

More information

A Frame Packing Mechanism Using PDO Communication Service within CANopen

A Frame Packing Mechanism Using PDO Communication Service within CANopen 28 A Frame Packng Mechansm Usng PDO Communcaton Servce wthn CANopen Mnkoo Kang and Kejn Park Dvson of Industral & Informaton Systems Engneerng, Ajou Unversty, Suwon, Gyeongg-do, South Korea Summary The

More information

ON SOME ENTERTAINING APPLICATIONS OF THE CONCEPT OF SET IN COMPUTER SCIENCE COURSE

ON SOME ENTERTAINING APPLICATIONS OF THE CONCEPT OF SET IN COMPUTER SCIENCE COURSE Yordzhev K., Kostadnova H. Інформаційні технології в освіті ON SOME ENTERTAINING APPLICATIONS OF THE CONCEPT OF SET IN COMPUTER SCIENCE COURSE Yordzhev K., Kostadnova H. Some aspects of programmng educaton

More information

Esc101 Lecture 1 st April, 2008 Generating Permutation

Esc101 Lecture 1 st April, 2008 Generating Permutation Esc101 Lecture 1 Aprl, 2008 Generatng Permutaton In ths class we wll look at a problem to wrte a program that takes as nput 1,2,...,N and prnts out all possble permutatons of the numbers 1,2,...,N. For

More information

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique //00 :0 AM Outlne and Readng The Greedy Method The Greedy Method Technque (secton.) Fractonal Knapsack Problem (secton..) Task Schedulng (secton..) Mnmum Spannng Trees (secton.) Change Money Problem Greedy

More information

On Some Entertaining Applications of the Concept of Set in Computer Science Course

On Some Entertaining Applications of the Concept of Set in Computer Science Course On Some Entertanng Applcatons of the Concept of Set n Computer Scence Course Krasmr Yordzhev *, Hrstna Kostadnova ** * Assocate Professor Krasmr Yordzhev, Ph.D., Faculty of Mathematcs and Natural Scences,

More information

Efficient Broadcast Disks Program Construction in Asymmetric Communication Environments

Efficient Broadcast Disks Program Construction in Asymmetric Communication Environments Effcent Broadcast Dsks Program Constructon n Asymmetrc Communcaton Envronments Eleftheros Takas, Stefanos Ougaroglou, Petros copoltds Department of Informatcs, Arstotle Unversty of Thessalonk Box 888,

More information

Notes on Organizing Java Code: Packages, Visibility, and Scope

Notes on Organizing Java Code: Packages, Visibility, and Scope Notes on Organzng Java Code: Packages, Vsblty, and Scope CS 112 Wayne Snyder Java programmng n large measure s a process of defnng enttes (.e., packages, classes, methods, or felds) by name and then usng

More information

Intro. Iterators. 1. Access

Intro. Iterators. 1. Access Intro Ths mornng I d lke to talk a lttle bt about s and s. We wll start out wth smlartes and dfferences, then we wll see how to draw them n envronment dagrams, and we wll fnsh wth some examples. Happy

More information

GSLM Operations Research II Fall 13/14

GSLM Operations Research II Fall 13/14 GSLM 58 Operatons Research II Fall /4 6. Separable Programmng Consder a general NLP mn f(x) s.t. g j (x) b j j =. m. Defnton 6.. The NLP s a separable program f ts objectve functon and all constrants are

More information

S1 Note. Basis functions.

S1 Note. Basis functions. S1 Note. Bass functons. Contents Types of bass functons...1 The Fourer bass...2 B-splne bass...3 Power and type I error rates wth dfferent numbers of bass functons...4 Table S1. Smulaton results of type

More information

USING GRAPHING SKILLS

USING GRAPHING SKILLS Name: BOLOGY: Date: _ Class: USNG GRAPHNG SKLLS NTRODUCTON: Recorded data can be plotted on a graph. A graph s a pctoral representaton of nformaton recorded n a data table. t s used to show a relatonshp

More information

5 The Primal-Dual Method

5 The Primal-Dual Method 5 The Prmal-Dual Method Orgnally desgned as a method for solvng lnear programs, where t reduces weghted optmzaton problems to smpler combnatoral ones, the prmal-dual method (PDM) has receved much attenton

More information

Term Weighting Classification System Using the Chi-square Statistic for the Classification Subtask at NTCIR-6 Patent Retrieval Task

Term Weighting Classification System Using the Chi-square Statistic for the Classification Subtask at NTCIR-6 Patent Retrieval Task Proceedngs of NTCIR-6 Workshop Meetng, May 15-18, 2007, Tokyo, Japan Term Weghtng Classfcaton System Usng the Ch-square Statstc for the Classfcaton Subtask at NTCIR-6 Patent Retreval Task Kotaro Hashmoto

More information

The stream cipher MICKEY-128 (version 1) Algorithm specification issue 1.0

The stream cipher MICKEY-128 (version 1) Algorithm specification issue 1.0 The stream cpher MICKEY-128 (verson 1 Algorthm specfcaton ssue 1. Steve Babbage Vodafone Group R&D, Newbury, UK steve.babbage@vodafone.com Matthew Dodd Independent consultant matthew@mdodd.net www.mdodd.net

More information

3D Virtual Eyeglass Frames Modeling from Multiple Camera Image Data Based on the GFFD Deformation Method

3D Virtual Eyeglass Frames Modeling from Multiple Camera Image Data Based on the GFFD Deformation Method NICOGRAPH Internatonal 2012, pp. 114-119 3D Vrtual Eyeglass Frames Modelng from Multple Camera Image Data Based on the GFFD Deformaton Method Norak Tamura, Somsangouane Sngthemphone and Katsuhro Ktama

More information

Improvement of Spatial Resolution Using BlockMatching Based Motion Estimation and Frame. Integration

Improvement of Spatial Resolution Using BlockMatching Based Motion Estimation and Frame. Integration Improvement of Spatal Resoluton Usng BlockMatchng Based Moton Estmaton and Frame Integraton Danya Suga and Takayuk Hamamoto Graduate School of Engneerng, Tokyo Unversty of Scence, 6-3-1, Nuku, Katsuska-ku,

More information

Analysis of Non-coherent Fault Trees Using Ternary Decision Diagrams

Analysis of Non-coherent Fault Trees Using Ternary Decision Diagrams Analyss of Non-coherent Fault Trees Usng Ternary Decson Dagrams Rasa Remenyte-Prescott Dep. of Aeronautcal and Automotve Engneerng Loughborough Unversty, Loughborough, LE11 3TU, England R.Remenyte-Prescott@lboro.ac.uk

More information

Simulation Based Analysis of FAST TCP using OMNET++

Simulation Based Analysis of FAST TCP using OMNET++ Smulaton Based Analyss of FAST TCP usng OMNET++ Umar ul Hassan 04030038@lums.edu.pk Md Term Report CS678 Topcs n Internet Research Sprng, 2006 Introducton Internet traffc s doublng roughly every 3 months

More information

AP PHYSICS B 2008 SCORING GUIDELINES

AP PHYSICS B 2008 SCORING GUIDELINES AP PHYSICS B 2008 SCORING GUIDELINES General Notes About 2008 AP Physcs Scorng Gudelnes 1. The solutons contan the most common method of solvng the free-response questons and the allocaton of ponts for

More information

Module Management Tool in Software Development Organizations

Module Management Tool in Software Development Organizations Journal of Computer Scence (5): 8-, 7 ISSN 59-66 7 Scence Publcatons Management Tool n Software Development Organzatons Ahmad A. Al-Rababah and Mohammad A. Al-Rababah Faculty of IT, Al-Ahlyyah Amman Unversty,

More information

Sorting Review. Sorting. Comparison Sorting. CSE 680 Prof. Roger Crawfis. Assumptions

Sorting Review. Sorting. Comparison Sorting. CSE 680 Prof. Roger Crawfis. Assumptions Sortng Revew Introducton to Algorthms Qucksort CSE 680 Prof. Roger Crawfs Inserton Sort T(n) = Θ(n 2 ) In-place Merge Sort T(n) = Θ(n lg(n)) Not n-place Selecton Sort (from homework) T(n) = Θ(n 2 ) In-place

More information

A fault tree analysis strategy using binary decision diagrams

A fault tree analysis strategy using binary decision diagrams Loughborough Unversty Insttutonal Repostory A fault tree analyss strategy usng bnary decson dagrams Ths tem was submtted to Loughborough Unversty's Insttutonal Repostory by the/an author. Addtonal Informaton:

More information

Lecture - Data Encryption Standard 4

Lecture - Data Encryption Standard 4 The Data Encrypton Standard For an encrypton algorthm we requre: secrecy of the key and not of the algorthm tself s the only thng that s needed to ensure the prvacy of the data the best cryptographc algorthms

More information

Constructing Minimum Connected Dominating Set: Algorithmic approach

Constructing Minimum Connected Dominating Set: Algorithmic approach Constructng Mnmum Connected Domnatng Set: Algorthmc approach G.N. Puroht and Usha Sharma Centre for Mathematcal Scences, Banasthal Unversty, Rajasthan 304022 usha.sharma94@yahoo.com Abstract: Connected

More information

such that is accepted of states in , where Finite Automata Lecture 2-1: Regular Languages be an FA. A string is the transition function,

such that is accepted of states in , where Finite Automata Lecture 2-1: Regular Languages be an FA. A string is the transition function, * Lecture - Regular Languages S Lecture - Fnte Automata where A fnte automaton s a -tuple s a fnte set called the states s a fnte set called the alphabet s the transton functon s the ntal state s the set

More information

Fast Computation of Shortest Path for Visiting Segments in the Plane

Fast Computation of Shortest Path for Visiting Segments in the Plane Send Orders for Reprnts to reprnts@benthamscence.ae 4 The Open Cybernetcs & Systemcs Journal, 04, 8, 4-9 Open Access Fast Computaton of Shortest Path for Vstng Segments n the Plane Ljuan Wang,, Bo Jang

More information

Improving Low Density Parity Check Codes Over the Erasure Channel. The Nelder Mead Downhill Simplex Method. Scott Stransky

Improving Low Density Parity Check Codes Over the Erasure Channel. The Nelder Mead Downhill Simplex Method. Scott Stransky Improvng Low Densty Party Check Codes Over the Erasure Channel The Nelder Mead Downhll Smplex Method Scott Stransky Programmng n conjuncton wth: Bors Cukalovc 18.413 Fnal Project Sprng 2004 Page 1 Abstract

More information

Performance Evaluation of Information Retrieval Systems

Performance Evaluation of Information Retrieval Systems Why System Evaluaton? Performance Evaluaton of Informaton Retreval Systems Many sldes n ths secton are adapted from Prof. Joydeep Ghosh (UT ECE) who n turn adapted them from Prof. Dk Lee (Unv. of Scence

More information

Miroslav N. Velev* Randal E. Bryant

Miroslav N. Velev* Randal E. Bryant 134 Int. J. Embedded Systems, Vol. 1, Nos. 1/2, 2005 TLSm and EVC: a term-level symbolc smulator and an effcent decson procedure for the logc of equalty wth unnterpreted functons and memores Mroslav N.

More information

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms Course Introducton Course Topcs Exams, abs, Proects A quc loo at a few algorthms 1 Advanced Data Structures and Algorthms Descrpton: We are gong to dscuss algorthm complexty analyss, algorthm desgn technques

More information

MODULE DESIGN BASED ON INTERFACE INTEGRATION TO MAXIMIZE PRODUCT VARIETY AND MINIMIZE FAMILY COST

MODULE DESIGN BASED ON INTERFACE INTEGRATION TO MAXIMIZE PRODUCT VARIETY AND MINIMIZE FAMILY COST INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN, ICED 07 28-31 AUGUST 2007, CITE DES SCIENCES ET DE L'INDUSTRIE, PARIS, FRANCE MODULE DESIGN BASED ON INTERFACE INTEGRATION TO MAIMIZE PRODUCT VARIETY AND

More information

SENSITIVITY ANALYSIS IN LINEAR PROGRAMMING USING A CALCULATOR

SENSITIVITY ANALYSIS IN LINEAR PROGRAMMING USING A CALCULATOR SENSITIVITY ANALYSIS IN LINEAR PROGRAMMING USING A CALCULATOR Judth Aronow Rchard Jarvnen Independent Consultant Dept of Math/Stat 559 Frost Wnona State Unversty Beaumont, TX 7776 Wnona, MN 55987 aronowju@hal.lamar.edu

More information

Topology Design using LS-TaSC Version 2 and LS-DYNA

Topology Design using LS-TaSC Version 2 and LS-DYNA Topology Desgn usng LS-TaSC Verson 2 and LS-DYNA Wllem Roux Lvermore Software Technology Corporaton, Lvermore, CA, USA Abstract Ths paper gves an overvew of LS-TaSC verson 2, a topology optmzaton tool

More information

CPE 628 Chapter 2 Design for Testability. Dr. Rhonda Kay Gaede UAH. UAH Chapter Introduction

CPE 628 Chapter 2 Design for Testability. Dr. Rhonda Kay Gaede UAH. UAH Chapter Introduction Chapter 2 Desgn for Testablty Dr Rhonda Kay Gaede UAH 2 Introducton Dffcultes n and the states of sequental crcuts led to provdng drect access for storage elements, whereby selected storage elements are

More information

Skew Angle Estimation and Correction of Hand Written, Textual and Large areas of Non-Textual Document Images: A Novel Approach

Skew Angle Estimation and Correction of Hand Written, Textual and Large areas of Non-Textual Document Images: A Novel Approach Angle Estmaton and Correcton of Hand Wrtten, Textual and Large areas of Non-Textual Document Images: A Novel Approach D.R.Ramesh Babu Pyush M Kumat Mahesh D Dhannawat PES Insttute of Technology Research

More information

Machine Learning: Algorithms and Applications

Machine Learning: Algorithms and Applications 14/05/1 Machne Learnng: Algorthms and Applcatons Florano Zn Free Unversty of Bozen-Bolzano Faculty of Computer Scence Academc Year 011-01 Lecture 10: 14 May 01 Unsupervsed Learnng cont Sldes courtesy of

More information