Aachen. Toward Adjoint OpenFOAM. Department of Computer Science. Technical Report. Niloofar Safiran and Uwe Naumann

Size: px
Start display at page:

Download "Aachen. Toward Adjoint OpenFOAM. Department of Computer Science. Technical Report. Niloofar Safiran and Uwe Naumann"

Transcription

1 Aachen Department of Computer Science Technical Report Toward Adjoint OpenFOAM Niloofar Safiran and Uwe Naumann ISSN Aachener Informatik-Berichte AIB RWTH Aachen Department of Computer Science July

2 The publications of the Department of Computer Science of RWTH Aachen University are in general accessible through the World Wide Web. 2

3 Toward Adjoint OpenFOAM Niloofar Safiran and Uwe Naumann LuFG Informatik 12 - STCE, RWTH Aachen University, Germany {safiran, naumann}@stce.rwth-aachen.de Abstract. OpenFOAM is a package which simplifies the implementation of physical models by mimicking the form of partial differential equations in software. Use of OpenFOAM is rapidly expanding in the research community and among industrial users, covering a wide range of continuum models. AD provides accurate derivative values and better runtime performance of the adjoint model compared with finite differences. This paper presents a transformation of the OpenFOAM code that can be used for calculating derivatives with adjoint mode of AD. An example based on ODE is considered here. 1 Introduction The OpenFOAM (Open Field Operation and Manipulation) CFD Toolbox is a free, open source CFD software package produced by OpenCFD Ltd. It has a large user base across most areas of engineering and science, from both commercial and academic organisations. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and electromagnetics. It includes tools for meshing, a parallelised mesher for pre- and post-processing. The aim of this paper is Applying Algorithmic Differentiation (AD) in OpenFOAM and as result Adjoint OpenFOAM, i.e., calculating the derivative with adjoint mode of algorithmic differentiation by operator overloading (DCO/C++). Here it is shown how to relate DCO/C++ with OpenFOAM and use it to calculate the derivatives of one simple ODE with tangent-linear and adjoint mode AD in OpenFOAM. Calculating the derivatives accurately and efficiently (which AD does) plays a very important role in sensitivity analysis and optimization. 2 ODE in OpenFOAM The main part of ODE solver in OpenFOAM can be found in: $FOAM SRC/ODE For the initial value ODE problem, there are three different kinds of methods in OpenFOAM: RK: Runge-Kutta KRR4: Kaps-Rentrop

4 SIBS: Semi-Implicit Bulirsh-Stoer which can be found in $FOAM SRC/ODE/ODESolvers/: RK/, KRR4/, SIBS/ respectively. In this description, I consider only the KRR4 method. For the system implicit differencing gives y = f(y) (1) y n+1 = y n +hf(y n+1 ) (2) In general this is some nasty set of nonlinear equations that has to be solved iteratively at each step. If we try linearizing the equations as in Newton s method we will have [ y n+1 = y n +h f(y n )+ f ] y.(y n+1 y n ) yn (3) Here f/ y is the matrix of the partial derivatives of the right hand side (the Jacobian matrix). Rearrange equation (3) into the form [ y n+1 = y n +h 1 h f ] 1.f(y n ) (4) y If h is not too big, only one iteration of Newton s method may be accurate enough to solve equation (2) using equation (4). In other words at each step we have to invert the matrix 1 h f y (5) to find y n+1. A Rosenbrock (Kaps-Rentrop) method seeks the solution of the form s y(x 0 +h) = y 0 + c i k i (6) i=1 4

5 where the corrections k i are found by solving s linear equations that generalize the structure in (4): ( (1 γhf ).k i = hf y 0 + i 1 i 1 α ij k j )+hf. γ ij k j, i = 1,...,s (7) j=1 Here we denote the Jacobian matrix by f. The coefficients γ,c i,α ij and γ ij are fixed constants independent of the problem. If γ = γ ij = 0, this is simply a Runge-Kutta scheme. Equation (7) can be solved successively for k 1,k 2,.... Crucial to the success of a stiff integration scheme is an automatic stepsize adjustment which here will be done in ODESolver.C. To minimize the matrix-vector multiplications on the right hand side of the (7), we rewrite the equation in terms of quantities j=1 The equation then takes the form i 1 g i = γ ij k j +γk i (8) j=1 (1/γh f ).g 1 = f(y 0 ) (1/γh f ).g 2 = f(y 0 +a 21 g 1 )+c 21 g 1 /h (1/γh f ).g 3 = f(y 0 +a 31 g 1 +a 32 g 2 )+(c 31 g 1 +c 32 g 2 )/h (1/γh f ).g 4 = f(y 0 +a 41 g 1 +a 42 g 2 +a 43 g 3 )+(c 41 g 1 +c 42 g 2 +c 43 g 3 )/h In the implementation of Kaps-Rentrop algorithm, OpenFOAM provides a routine in the ODE class (in file ODE.H ) called derivatives that returns f (called dydx) as a function of x and y. It also supplies a routine jacobian that returns f (called dfdy) and f/ x (called dfdx) as a function of x and y. (9) 3 Simple ODE Given initial value ODE: y = cos(αx),y(0) = 0 We want to solve our own ODE with OpenFOAM, we will write it in $FOAM APP/ test/ ODETest. At the begining of the code we firstly define the dimension of our ODE: label neqns() const 2{ 5

6 return 1; 4 } Because in our case the order of the ordinary differential equation is 1. Then change our ODE to the first order ODE. y = dydx[0] = cos(αx) void derivatives 2 ( const scalar x, 4 const scalarfield& y, scalarfield& dydx 6 ) const { 8 scalar alpha = 1.0; dydx [0] = cos(alpha x) ; 10 } Then we calculate the Jacobian for both x and y: Suppose f = cos(αx) The Jacobian for x in our case : f x = αsin(αx) The Jacobian for y in our case : f y = 0 void jacobian 2 ( const scalar x, 4 const scalarfield& y, scalarfield& dfdx, 6 scalarsquarematrix& dfdy ) const 8 { scalar alpha = 1.0; 10 dfdx [0] = ( 1) alpha sin (alpha x) ; 12 dfdy [0][0] = 0.0; 14 } 6

7 Finally we define the method of solver and add the initial values in our case and solve our ODE in the main function: int main( int argc, char argv []) 2{ word ODESolverName( KRR4 ) ; 4 testode ode; 6 autoptr<odesolver> odesolver = ODESolver ::New(ODESolverName, ode) ; 8 scalar xstart = 0.0; \\ starting time 10 scalarfield ystart (ode.neqns() ) ; ystart [0] = 0.0; \\ y(0) = 0 12 scalarfield dystart(ode.neqns() ) ; 14 ode. derivatives (xstart, ystart, dystart) ; 16 scalar x = xstart ; scalar xend = x + 1.0; 18 scalarfield y = ystart ; \\ end time 20 scalar hest = 0.001; \\ the time step 22 odesolver >solve (ode, x, xend, y, 1e 4, hest) ; 24 Info << nl << y = << y << endl ; Info << \nend\n << endl ; 26 28} return 0; 2 Then we need to compile the file so that we can run it in OpenFOAM using the linux command wmake. We get: Selecting ODE solver KRR4 y = End If we solve our ODE analytically we can see that: y = cos(αx) y = cos(αx) 7

8 y = cos(αx) = 1 α sin(αx) for α = 1.0 and x : 0 1 : y = sin(1) sin(0) = which is the same as the result we obtained above. 4 Algorithmic Differentiation Algorithmic Differentiation (AD), sometimes alternatively called automatic differentiation, is a method for computing derivatives of output of numerical programs with respect to its inputs both accurately (with machine precision) and efficiently. The two basic modes of AD forward and reverse and combinations thereof yield products of a vector with Jacobian, its transposed, or Hessian respectively. Numerical simulation programs map potentially very large number of input parameters (let there be n) onto often much fewer outputs (say m of them, also refer to as objectives). The classical numerical approach to quantifying the sensitivities of those objectives with respect to the parameters through Finite Difference quotients increase the computational complexity by a factor of O(n). The number of parameters may reach values of the order of n = Hence forward sensitivity analysis would require n runs of the simulation, which is simply not feasible. Reverse (or Adjoint) methods and corresponding program transformation techniques have been developed to replace the dependence on n with that on the number of objectives m. Often the number of objectives is equal to 1. In this case adjoint programs deliver the sensitivities of the objective with respect to all input parameters with an increase in the computational complexity of O(1). Methods of implementation of AD: Overloading STCE tool : dco Source transforming STCE tool : dcc In this paper I will only consider dco. 5 Derivative Code by Overloading Derivative Code by Overloading (DCO/C++) is a developement of the institute Software and Tools for Computational Engineering (LuFG Infomatik 12, RWTH Aachen) implementing AD. The range of capabilities covered by DCO/C++ is deriven by different application research subjects. This paper discusses the application of DCO/C++ in OpenFOAM. The objective is to provide an efficient and robust tool for the computation of the projection of derivatives of arbitrary order of the a function given as an implementation in C/C++. Additionally the capability of coupling the robust overloading technique with optimized computer generated or hand-written external computations of adjoint projection is provided. 8

9 The main idea of DCO/C++ is to use the so-called active variable concept. DCO/C++ provides data types for tangent-linear and adjoint projection. Thereby adjoint projections require an additional data structure for saving data during the forward sweep. This is covered by a tape. The tape can be thought of as directed acyclic graph holding all necessary information for reverse sweep. All data types and tapes are C++-objects inside the namespace dco. Additionally every data type has its own namespace: namespace classes description dco::t1s type tangent-linear 1st-order floating point type dco::a1s type adjoint 1st-order floating point type static tape data structure for propagating adjoints dco::t2s a1s type tangent-linear over adjoint 2nd-order floating point type static tape data structure for propagating 2nd-order adjoints Every data type holds not only a floating point value but also the derivative information, e.g. the tangent-linear type for a variable x must hold the value and also x (1), the adjoint type for a variable x must hold the value and also x (1), etc.. To access those additional components there are set and get routines. Those functions are globally defined in the appropriate namespace. In DCO/C++ the mathematical operators like +,,,/ and standard features such as sin, cos, pow, etc. with their own operators or functions are overwritten. These are desiged so that for each calculation with an active variable the derivative will also be computed. 6 Applying DCO/C++ in OpenFOAM The purpose of this section is to compute the derivative of our ODE (see section 3) with respect to α in OpenFOAM with DCO/C++, i.e., { y = cos(αx) } α} {{ } ODESolver:KRR4 } {{ } DCO/C++ The very first task is to change the data types of the active variables into dco :: t1s :: type (or dco :: a1s :: type) for tangent linear (or adjoint). Here the active variables are: α : which is independent and has scalar type, y : which is dependent and has scalarfield type. In OpenFOAM nearly all of the data types are based on scalar type which is defined on two basic types double and float, in which double type is preput. First of all the definition of the basic type double in OpenFOAM must be found. This definition is in doublescalar.h in $F OAM SRC/OpenF OAM/primitives/Scalar/doubleScalar which has 9

10 the form: typedef double doublescalar; A list of changes that should be done to OpenFOAM are: 1) Add dco.hpp and the related files to $F OAM SRC/OpenF OAM/lnInclude. 2) In $F OAM SRC/OpenF OAM/primitives/Scalar/doubleScalar.H : Include the header file dco.hpp, i.e., #include dco.hpp. Change the typedef double doublescalar to typedef dco::t1s::type doublescalar. Delete the inline functions for hypot, atan2, etc, because all of them are defined in dco.hpp for dco type. Add a function to return the double value of the dco type, later we will see the usage of this function. inline double value ( Scalar s) 2{ return dco :: t1s :: value(s) ; 4} which the dco::t1s::value function is defined in tlm type.hpp and returns the value of the dco type. 3) In $F OAM SRC/OpenF OAM/primitives/Scalar/doubleF loat.h : Include the header file dco.hpp, i.e., #include dco.hpp. Change all double types to dco::t1s::type. 4) In $F OAM SRC/OpenF OAM/primitives/Scalar/Scalar.H : Delete all standard C++ transcendental functions because they are defined in the dco file for dco type. 5) In $F OAM SRC/OpenF OAM/db/IOstreams/IOstreams/IOstreams.H the cast to integer is needed. So we use the function value to change dco::t1s::type to double and then cast it to int : Code: return int (10*num + SMALL); Solution: return int (10* value(num) + value(small)); Code: return int (versionnumber ); Solution: return int (value(versionnumber )); 10

11 Code: return int (10.0 * (versionnumber - majorversion()); Solution: return int (10.0 * (value(versionnumber ) - majorversion()); 6) Eliminating UNARY FUNCTIONS, BINARY TYPE OPERATOR and BesselFunction from all files containing them e.g. from $F OAM SRC/OpenF OAM/f ields/f ields/scalarf ield/scalarf ield.h, because all of the unary functions and binary operators are defined in dco files for dco type. Furthermore, delete the :: at the begining of the functions like abs(), sqrt(), etc, for example: Code: return ::abs(s); Solution: return abs(s); 7) In $F OAM SRC/OpenF OAM/db/IOstream/token/token.H one union is used. DCO/C++ does not support any unoin. Deleting the union will not cause error in the program. 8) In $F OAM SRC/OpenF OAM/db/IOstream/token/tokenI.H delete all functions and variables related to union. 9) In some cases a cast to dco type is needed. For example in $F OAM SRC/lagrangian/basic/P article/p articlei.h: Code : scalar l1 = 0.5 (ap :: sqrt(cp)); scalar l2 = 0.5 (ap+ :: sqrt(cp)); Solution: scalar l1 = scalar( 0.5) (ap sqrt(cp)); scalar l2 = scalar( 0.5) (ap + sqrt(cp)); 10) For simplicity, we comment all of the ODESolvers in $FOAM SRC/ODE/Make/files out except for the Runge-Kutta and KRR4. 11) The goal is to compute y α, so the changes of α should be observed. Therefore, add α to the signature of the solve function. As it is shown in section 3, the dependency of α and y is written in functions derivatives and jacobian, changing also the signature of those functions we will have: 11

12 void derivatives 2 ( const scalar x, 4 const scalarfield& y, scalarfield& dydx, 6 scalar& alpha ) const 8 { 10 dydx [0] = cos(alpha x) ; } void jacobian 2 ( const scalar x, 4 const scalarfield& y, scalarfield& dfdx, 6 scalarsquarematrix& dfdy, scalar& alpha 8 ) const { 10 dfdx [0] = ( 1) alpha sin (alpha x) ; 12 dfdy [0][0] = 0.0; 14 } }; In the jacobian function f/ x and also f/ y are calculated. Another alternative is to use DCO/C++ locally to compute them. This is especially efficient for more comlex equation(s) which the derivatives are not easy to calculate. Theprocess of applyingthe adjoint mode of the DCO/C++ is the same as the tangent-linear mode, the only difference is that instead of dco::t1s::type use dco::a1s::type. For tangent-linear mode the definitions of the set and get routines in the main function are: int main( int argc, char argv []) 2{ word ODESolverName( KRR4 ) ; 4 testode ode; 6 autoptr<odesolver> odesolver = ODESolver ::New(ODESolverName, ode) ; 8 scalar xstart = 0.0; 12

13 scalar alpha = 1.0; 10 scalarfield ystart (ode.neqns() ) ; ystart [0] = 0.0; 12 scalarfield dystart(ode.neqns() ) ; 14 ode. derivatives (xstart, ystart, dystart, alpha) ; 16 scalar x = xstart ; scalar xend = x + 1.0; 18 scalarfield y = ystart ; 20 scalar hest = 0.001; 22 double derivative = 0; 24 dco :: t1s :: set (alpha, 1.0, 1) ; 26 odesolver >solve (ode, x, xend, y, 1e 4, hest, alpha) ; 28 dco :: t1s :: get(y[0], derivative, 1) ; 30 std :: cout << nl << y = << y [0]. v << std :: endl ; std :: cout << nl << Derivative : y = << derivative << std :: endl ; } Info << \nend\n << endl ; return 0; For adjoint mode the definitions of the set and get routines in the main function are: int main( int argc, char argv []) 2{ word ODESolverName( KRR4 ) ; 4 testode ode; 6 autoptr<odesolver> odesolver = ODESolver ::New(ODESolverName, ode) ; 8 scalar xstart = 0.0; scalar alpha = 1.0; 10 scalarfield ystart (ode.neqns() ) ; ystart [0] = 0.0; 12 dco :: a1s :: static tape tape(1e05) ; 14 tape. register variable (alpha) ; 13

14 16 scalarfield dystart(ode.neqns() ) ; ode. derivatives (xstart, ystart, dystart, alpha) ; 18 scalar x = xstart ; 20 scalar xend = x + 1.0; scalarfield y = ystart ; scalar hest = 0.001; double derivative = 0; odesolver >solve (ode, x, xend, y, 1e 4, hest, alpha) ; dco :: a1s :: set (y[0], 1.0, 1); 30 tape. interpret reverse () ; 32 dco :: a1s :: get(alpha, derivative, 1); 34 std :: cout << nl << y = << y [0]. v << std :: endl ; 36 std :: cout << nl << Derivative : y = << derivative << std :: endl ; 38 Info << \nend\n << endl ; 40 return 0; } 12) Running the ODE Library wmake libso ODE in $FOAM SRC. 13) Running our ODETest with wmake. We get: 2 4 Selecting ODE solver KRR4 y = Derivative : y = End In Section 3 the analytical solution of our ODE is shown: y = cos(αx) y = 1 α sin(αx) The derivative with respect to α will be: 14

15 y α = α {1 α sin(αx)} = 1 α 2 sin(αx)+ x α cos(αx) for α = 1.0 and x : 0 1 : { sin(1)+cos(1)} { sin(0)+0} = which is the same as the result we obtained above. 7 Future Work The aim of this paper was computing y α where y is given as solution of ODE to be solved by one of the methods of OpenFOAM s ODESolver. An interesting area of future work is expanding the application of DCO/C++ in all examples and solve functions of OpenFOAM. KRR4 solver requires Jacobian matrix and also f/ x that both can be computed by DCO/C++ locally instead of calculating it manually, because sometimes the functions are so complicated that manual calculation will not be easy. Another opportunity to make the computations more efficiet is that only the data types of active variables are dco types not all of the variables. In this paper actually we define the scalar to be the dco type, although we just needed the dco type for y and α. For this purpose the appropriate unary function and binary operators should also be defined in OpenFOAM. It means that it should differentiate between e.g. cos(scalar a) and cos(active type a). References [1] Exact First- and Second- Order Greeks by Algorithmic Differentiation., NAG Technical Report, TR5/10, The Numerical Algorithm Group ltd [2] U. Naumann. The Art of Differentiating Computer Programs, Introduction, SIAM, 2011, to appear. [3] J. Nocedal and S. J. Wright. Numerical Optimization, Second Edition, Springer Series in Operations Research, [4] A. Griewank and A. Walther. Evaluating Derivatives. Principles and Techniques of Algorithmic Differentiation, Second Edition, SIAM, [5] G.Zongyuan. Introduction to ODE solvers and their application in OpenFOAM, [6] E. Hairer, G. Wanner. Solving Ordinary Differential Equations II, Stiff and Differential-Algebric Problems, Second Edition, Springer, [7] J. Ungermann. Tomographic reconstruction of atmospheric volumes from infrared limb-imager measurements. Diss., Forschungszentrum Juelich, 2011 [8] J. Lotz, K. Leppkes, J. Ungermann, and U. Naumann. Efficient discrete adjoint computation in a spectral simulation code. Technical Report AIB , RWTH Aachen, To appear. [9] K. Leppkes and U. Naumann. dco/c++ Efficient Derivative Code by Overloading in c + +. Technical Report AIB , RWTH Aachen,

16 16

17 Aachener Informatik-Berichte This is the list of all technical reports since To obtain copies of reports please consult or send your request to: Informatik-Bibliothek, RWTH Aachen, Ahornstr. 55, Aachen, Fachgruppe Informatik: Jahresbericht David de Frutos Escrig, Klaus Indermark: Equivalence Relations of Non- Deterministic Ianov-Schemes Manfred Nagl: A Software Development Environment based on Graph Technology Claus Lewerentz, Manfred Nagl, Bernhard Westfechtel: On Integration Mechanisms within a Graph-Based Software Development Environment Reinhard Rinn: Über Eingabeanomalien bei verschiedenen Inferenzmodellen Werner Damm, Gert Döhmen: Specifying Distributed Computer Architectures in AADL* Gregor Engels, Claus Lewerentz, Wilhelm Schäfer: Graph Grammar Engineering: A Software Specification Method Manfred Nagl: Set Theoretic Approaches to Graph Grammars Claus Lewerentz, Andreas Schürr: Experiences with a Database System for Software Documents Herbert Klaeren, Klaus Indermark: A New Implementation Technique for Recursive Function Definitions Rita Loogen: Design of a Parallel Programmable Graph Reduction Machine with Distributed Memory J. Börstler, U. Möncke, R. Wilhelm: Table compression for tree automata Gabriele Esser, Johannes Rückert, Frank Wagner Gesellschaftliche Aspekte der Informatik Peter Martini, Otto Spaniol: Token-Passing in High-Speed Backbone Networks for Campus-Wide Environments Thomas Welzel: Simulation of a Multiple Token Ring Backbone Peter Martini: Performance Comparison for HSLAN Media Access Protocols Peter Martini: Performance Analysis of Multiple Token Rings Andreas Mann, Johannes Rückert, Otto Spaniol: Datenfunknetze Andreas Mann, Johannes Rückert: Packet Radio Networks for Data Exchange AndreasMann, JohannesRückert:ConcurrentSlot AssignmentProtocol for Packet Radio Networks W. Kremer, F. Reichert, J. Rückert, A. Mann: Entwurf einer Netzwerktopologie für ein Mobilfunknetz zur Unterstützung des öffentlichen Straßenverkehrs Kai Jakobs: Towards User-Friendly Networking Kai Jakobs: The Directory - Evolution of a Standard 17

18 Kai Jakobs: Directory Services in Distributed Systems - A Survey Martine Schümmer: RS-511, a Protocol for the Plant Floor U. Quernheim: Satellite Communication Protocols - A Performance Comparison Considering On-Board Processing PeterMartini,OttoSpaniol,ThomasWelzel: FileTransferin HighSpeed Token Ring Networks: Performance Evaluation by Approximate Analysis and Simulation Fachgruppe Informatik: Jahresbericht Wolfgang Thomas: Automata on Infinite Objects Michael Sonnenschein: On Petri Nets and Data Flow Graphs Heiko Vogler: Functional Distribution of the Contextual Analysis in Block-Structured Programming Languages: A Case Study of Tree Transducers Thomas Welzel: Einsatz des Simulationswerkzeuges QNAP2 zur Leistungsbewertung von Kommunikationsprotokollen Th. Janning, C. Lewerentz: Integrated Project Team Management in a Software Development Environment Joost Engelfriet, Heiko Vogler: Modular Tree Transducers Wolfgang Thomas: Automata and Quantifier Hierarchies Uschi Heuter: Generalized Definite Tree Languages Fachgruppe Informatik: Jahresbericht G. Esser, J. Rückert, F. Wagner (Hrsg.): Gesellschaftliche Aspekte der Informatik Heiko Vogler: Bottom-Up Computation of Primitive Recursive Tree Functions Andy Schürr: Introduction to PROGRESS, an Attribute Graph Grammar Based Specification Language J. Börstler: Reuse and Software Development - Problems, Solutions, and Bibliography (in German) Kai Jakobs: OSI - An Appropriate Basis for Group Communication? Kai Jakobs: ISO s Directory Proposal - Evolution, Current Status and Future Problems Bernhard Westfechtel: Extension of a Graph Storage for Software Documents with Primitives for Undo/Redo and Revision Control Peter Martini: High Speed Local Area Networks - A Tutorial P. Davids, Th. Welzel: Performance Analysis of DQDB Based on Simulation Manfred Nagl (Ed.): Abstracts of Talks presented at the WG 89 15th International Workshop on Graphtheoretic Concepts in Computer Science Peter Martini: The DQDB Protocol - Is it Playing the Game? Martine Schümmer: CNC/DNC Communication with MAP Martine Schümmer: Local Area Networks for Manufactoring Environments with hard Real-Time Requirements 18

19 M. Schümmer, Th. Welzel, P. Martini: Integration of Field Bus and MAP Networks - Hierarchical Communication Systems in Production Environments G. Vossen, K.-U. Witt: SUXESS: Towards a Sound Unification of Extensions of the Relational Data Model J. Derissen, P. Hruschka, M.v.d. Beeck, Th. Janning, M. Nagl: Integrating Structured Analysis and Information Modelling A. Maassen: Programming with Higher Order Functions Mario Rodriguez-Artalejo, Heiko Vogler: A Narrowing Machine for Syntax Directed BABEL H. Kuchen, R. Loogen, J.J. Moreno Navarro, M. Rodriguez Artalejo: Graph-based Implementation of a Functional Logic Language Fachgruppe Informatik: Jahresbericht Vera Jansen, Andreas Potthoff, Wolfgang Thomas, Udo Wermuth: A Short Guide to the AMORE System (Computing Automata, MOnoids and Regular Expressions) Jerzy Skurczynski: On Three Hierarchies of Weak SkS Formulas R. Loogen: Stack-based Implementation of Narrowing H. Kuchen, A. Wagener: Comparison of Dynamic Load Balancing Strategies Kai Jakobs, Frank Reichert: Directory Services for Mobile Communication Kai Jakobs: What s Beyond the Interface - OSI Networks to Support Cooperative Work Kai Jakobs: Directory Names and Schema - An Evaluation Ulrich Quernheim, Dieter Kreuer: Das CCITT - Signalisierungssystem Nr. 7 auf Satellitenstrecken; Simulation der Zeichengabestrecke H. Kuchen, R. Loogen, J.J. Moreno Navarro, M. Rodriguez Artalejo: Lazy Narrowing in a Graph Machine Kai Jakobs, Josef Kaltwasser, Frank Reichert, Otto Spaniol: Der Computer fährt mit Rudolf Mathar, Andreas Mann: Analyzing a Distributed Slot Assignment Protocol by Markov Chains A. Maassen: Compilerentwicklung in Miranda - ein Praktikum in funktionaler Programmierung (written in german) Manfred Nagl, Andreas Schürr: A Specification Environment for Graph Grammars A. Schürr: PROGRESS: A VHL-Language Based on Graph Grammars Marita Möller: Ein Ebenenmodell wissensbasierterkonsultationen - Unterstützung für Wissensakquisition und Erklärungsfähigkeit EricKowalewski:EntwurfundInterpretationeinerSprachezurBeschreibung von Konsultationsphasen in Expertensystemen Y. Ortega Mallen, D. de Frutos Escrig: A Complete Proof System for Timed Observations 19

20 Manfred Nagl: Modelling of Software Architectures: Importance, Notions, Experiences H. Fassbender, H. Vogler: A Call-by-need Implementation of Syntax Directed Functional Programming Guenther Geiler (ed.), Fachgruppe Informatik: Jahresbericht B. Steffen, A. Ingolfsdottir: Characteristic Formulae for Processes with Divergence M. Portz: A new class of cryptosystems based on interconnection networks H. Kuchen, G. Geiler: Distributed Applicative Arrays Ludwig Staiger: Kolmogorov Complexity and Hausdorff Dimension Ludwig Staiger: Syntactic Congruences for w-languages Eila Kuikka: A Proposal for a Syntax-Directed Text Processing System K. Gladitz, H. Fassbender, H. Vogler: Compiler-based Implementation of Syntax-Directed Functional Programming R. Loogen, St. Winkler: Dynamic Detection of Determinism in Functional Logic Languages K. Indermark, M. Rodriguez Artalejo (Eds.): Granada Workshop on the Integration of Functional and Logic Programming Rolf Hager, Wolfgang Kremer: The Adaptive PriorityScheduler: A More Fair Priority Service Discipline AndreasFasbender,WolfgangKremer:ANewApproximationAlgorithm for Tandem Networks with Priority Nodes J. Börstler, A. Zündorf: Revisiting extensions to Modula-2 to support reusability J. Börstler, Th. Janning: Bridging the gap between Requirements Analysis and Design A. Zündorf, A. Schürr: Nondeterministic Control Structures for Graph Rewriting Systems Matthias Jarke, John Mylopoulos, Joachim W. Schmidt, Yannis Vassiliou: DAIDA: An Environment for Evolving Information Systems M. Jeusfeld, M. Jarke: From Relational to Object-Oriented Integrity Simplification G. Hogen, A. Kindler, R. Loogen: Automatic Parallelization of Lazy Functional Programs Prof. Dr. rer. nat. Otto Spaniol: ODP (Open Distributed Processing): Yet another Viewpoint H. Kuchen, F. Lücking, H. Stoltze: The Topology Description Language TDL S. Graf, B. Steffen: Compositional Minimization of Finite State Systems R. Cleaveland, J. Parrow, B. Steffen: The Concurrency Workbench: A Semantics Based Tool for the Verification of Concurrent Systems RudolfMathar, JürgenMattfeldt: OptimalTransmissionRangesforMobile Communication in Linear Multihop Packet Radio Networks M. Jeusfeld, M. Staudt: Query Optimization in Deductive Object Bases 20

21 J. Knoop, B. Steffen: The Interprocedural Coincidence Theorem J. Knoop, B. Steffen: Unifying Strength Reduction and Semantic Code Motion T. Margaria: First-Order theories for the verification of complex FSMs B. Steffen: Generating Data Flow Analysis Algorithms from Modal Specifications Stefan Eherer (ed.), Fachgruppe Informatik: Jahresbericht Bernhard Westfechtel: Basismechanismen zur Datenverwaltungin strukturbezogenen Hypertextsystemen S. A. Smolka, B. Steffen: Priority as Extremal Probability Matthias Jarke, Carlos Maltzahn, Thomas Rose: Sharing Processes: Team Coordination in Design Repositories O. Burkart, B. Steffen: Model Checking for Context-Free Processes Matthias Jarke, Klaus Pohl: Information Systems Quality and Quality Information Systems Rudolf Mathar, Jürgen Mattfeldt: Analyzing Routing Strategy NFP in Multihop Packet Radio Networks on a Line Alfons Kemper, Guido Moerkotte: GrundlagenobjektorientierterDatenbanksysteme Matthias Jarke, Manfred Jeusfeld, Andreas Miethsam, Michael Gocek: Towards a logic-based reconstruction of software configuration management Werner Hans: A Complete Indexing Scheme for WAM-based Abstract Machines W. Hans, R. Loogen, St. Winkler: On the Interaction of Lazy Evaluation and Backtracking Matthias Jarke, Thomas Rose: Specification Management with CAD Th. Noll, H. Vogler: Top-down Parsing with Simultaneous Evaluation on Noncircular Attribute Grammars A. Schuerr, B. Westfechtel: Graphgrammatiken und Graphersetzungssysteme(written in german) Graduiertenkolleg Informatik und Technik (Hrsg.): Forschungsprojekte des Graduiertenkollegs Informatik und Technik M. Jarke (ed.): ConceptBase V3.1 User Manual Clarence A. Ellis, Matthias Jarke (Eds.): Distributed Cooperation in Integrated Information Systems - Proceedings of the Third International Workshop on Intelligent and Cooperative Information Systems H. Kuchen, R. Loogen (eds.): Proceedings of the 4th Int. Workshop on the Parallel Implementation of Functional Languages G. Hogen, R. Loogen: PASTEL- A Parallel Stack-Based Implementation of Eager Functional Programs with Lazy Data Structures (Extended Abstract) H. Kuchen, K. Gladitz: Implementing Bags on a Shared Memory MIMD- Machine 21

22 C. Rathsack, S.B. Scholz: LISA - A Lazy Interpreter for a Full-Fledged Lambda-Calculus T.A. Bratvold: Determining Useful Parallelism in Higher Order Functions S. Kahrs: Polymorphic Type Checking by Interpretation of Code M. Chakravarty, M. Köhler: Equational Constraints, Residuation, and the Parallel JUMP-Machine J. Seward: Polymorphic Strictness Analysis using Frontiers (Draft Version) D. Gärtner, A. Kimms, W. Kluge: pi-redˆ+ - A Compiling Graph- Reduction System for a Full Fledged Lambda-Calculus D. Howe, G. Burn: Experiments with strict STG code J. Glauert: Parallel Implementation of Functional Languages Using Small Processes M. Joy, T. Axford: A Parallel Graph Reduction Machine A. Bennett, P. Kelly: Simulation of Multicache Parallel Reduction K. Langendoen, D.J. Agterkamp: Cache Behaviour of Lazy Functional Programs (Working Paper) K. Hammond, S. Peyton Jones: Profiling scheduling strategies on the GRIP parallel reducer S. Mintchev: Using Strictness Information in the STG-machine D. Rushall: An Attribute Grammar Evaluator in Haskell J. Wild, H. Glaser, P. Hartel: Statistics on storage management in a lazy functional language implementation W.S. Martins: Parallel Implementations of Functional Languages D. Lester: Distributed Garbage Collection of Cyclic Structures (Draft version) J.C. Glas, R.F.H. Hofman, W.G. Vree: Parallelization of Branch-and- Bound Algorithms in a Functional Programming Environment S. Hwang, D. Rushall: The nu-stg machine: a parallelized Spineless Tagless Graph Reduction Machine in a distributed memory architecture (Draft version) G. Burn, D. Le Metayer: Cps-Translation and the Correctness of Optimising Compilers S.L. Peyton Jones, P. Wadler: Imperative functional programming(brief summary) W. Damm, F. Liu, Th. Peikenkamp: Evaluation and Parallelization of Functions in Functional + Logic Languages (abstract) M. Kesseler: Communication Issues Regarding Parallel Functional Graph Rewriting Th. Peikenkamp: Charakterizing and representing neededness in functional loginc languages (abstract) H. Doerr: Monitoring with Graph-Grammars as formal operational Models 22

23 J. van Groningen: Some implementation aspects of Concurrent Clean on distributed memory architectures G. Ostheimer: Load Bounding for Implicit Parallelism (abstract) H. Kuchen, F.J. Lopez Fraguas, J.J. Moreno Navarro, M. Rodriguez Artalejo: Implementing Disequality in a Lazy Functional Logic Language H. Kuchen, F.J. Lopez Fraguas: Result Directed Computing in a Functional Logic Language H. Kuchen, J.J. Moreno Navarro, M.V. Hermenegildo: Independent AND-Parallel Narrowing T. Margaria, B. Steffen: Distinguishing Formulas for Free K. Pohl: The Three Dimensions of Requirements Engineering R. Stainov: A Dynamic Configuration Facility for Multimedia Communications Michael von der Beeck: Integration of Structured Analysis and Timed Statecharts for Real-Time and Concurrency Specification W. Hans, St. Winkler: Aliasing and Groundness Analysis of Logic Programs through Abstract Interpretation and its Safety Gerhard Steinke, Matthias Jarke: Support for Security Modeling in Information Systems Design B. Schinzel: Warum Frauenforschung in Naturwissenschaft und Technik A. Kemper, G. Moerkotte, K. Peithner: Object-Orientation Axiomatised by Dynamic Logic Bernd Heinrichs, Kai Jakobs: Timer Handling in High-Performance Transport Systems B. Heinrichs, K. Jakobs, K. Lenßen, W. Reinhardt, A. Spinner: Euro- Bridge: Communication Services for Multimedia Applications C. Gerlhof, A. Kemper, Ch. Kilger, G. Moerkotte: Partition-Based Clustering in Object Bases: From Theory to Practice J. Börstler: Feature-Oriented Classification and Reuse in IPSEN M. Jarke, J. Bubenko, C. Rolland, A. Sutcliffe, Y. Vassiliou: Theories Underlying Requirements Engineering: An Overview of NATURE at Genesis K. Pohl, M. Jarke:Quality Information Systems: Repository Support for Evolving Process Models A. Zuendorf: Implementation of the imperative / rule based language PROGRES P. Koch: Intelligentes Backtracking bei der Auswertung funktionallogischer Programme RudolfMathar,JürgenMattfeldt:ChannelAssignmentinCellularRadio Networks Gerhard Friedrich, Wolfgang Neidl: Constructive Utility in Model-Based Diagnosis Repair Systems P. S. Chen, R. Hennicker, M. Jarke: On the Retrieval of Reusable Software Components 23

24 W. Hans, St.Winkler: Abstract Interpretation of Functional Logic Languages N. Kiesel, A. Schuerr, B. Westfechtel: Design and Evaluation of GRAS, a Graph-Oriented Database System for Engineering Applications Fachgruppe Informatik: Jahresbericht Patrick Shicheng Chen: On Inference Rules of Logic-Based Information Retrieval Systems G. Hogen, R. Loogen: A New Stack Technique for the Management of Runtime Structures in Distributed Environments A. Zündorf: A Heuristic for the Subgraph Isomorphism Problem in Executing PROGRES A. Kemper, D. Kossmann: Adaptable Pointer Swizzling Strategies in Object Bases: Design, Realization, and Quantitative Analysis GraduiertenkollegInformatikundTechnik(Hrsg.):GraduiertenkollegInformatik und Technik Matthias Berger: k-coloring Vertices using a Neural Network with Convergence to Valid Solutions M. Buchheit, M. Jeusfeld, W. Nutt, M. Staudt: Subsumption between Queries to Object-Oriented Databases O. Burkart, B. Steffen: Pushdown Processes: Parallel Composition and Model Checking R. Große-Wienker,O. Hermanns, D. Menzenbach, A. Pollacks,S. Repetzki, J. Schwartz, K. Sonnenschein, B. Westfechtel: Das SUKITS-Projekt: A-posteriori-Integration heterogener CIM-Anwendungssysteme Rudolf Mathar, Jürgen Mattfeldt: On the Distribution of Cumulated Interference Power in Rayleigh Fading Channels O. Maler, L. Staiger: On Syntactic Congruences for omega-languages M. Jarke, St. Eherer, R. Gallersdoerfer, M. Jeusfeld, M. Staudt: ConceptBase - A Deductive Object Base Manager M. Staudt, H.W. Nissen, M.A. Jeusfeld: Query by Class, Rule and Concept M. Jarke, K. Pohl, St. Jacobs et al.: Requirements Engineering: An Integrated View of Representation Process and Domain M. Jarke, K. Pohl: Establishing Vision in Context: Towards a Model of Requirements Processes W. Hans, H. Kuchen, St. Winkler: Full Indexing for Lazy Narrowing W. Hans, J.J. Ruz, F. Saenz, St. Winkler: A VHDL Specification of a Shared Memory Parallel Machine for Babel K. Finke, M. Jarke, P. Szczurko, R. Soltysiak: Quality Management for Expert Systems in Process Control M. Jarke, M.A. Jeusfeld, P. Szczurko: Three Aspects of Intelligent Cooperation in the Quality Cycle Margit Generet, Sven Martin (eds.), Fachgruppe Informatik: Jahresbericht

25 M. Lefering: Development of Incremental Integration Tools Using Formal Specifications P. Constantopoulos,M. Jarke,J. Mylopoulos, Y. Vassiliou: The Software Information Base: A Server for Reuse Rolf Hager, Rudolf Mathar, Jürgen Mattfeldt: Intelligent Cruise Control and Reliable Communication of Mobile Stations Rolf Hager, Peter Hermesmann, Michael Portz: Feasibility of Authentication Procedures within Advanced Transport Telematics Claudia Popien, Bernd Meyer, Axel Kuepper: A Formal Approach to Service Import in ODP Trader Federations P. Peters, P. Szczurko: Integrating Models of Quality Management Methods by an Object-Oriented Repository Manfred Nagl, Bernhard Westfechtel: A Universal Component for the Administration in Distributed and Integrated Development Environments Patrick Horster, Holger Petersen: Signatur- und Authentifikationsverfahren auf der Basis des diskreten Logarithmusproblems A. Schürr: PROGRES, A Visual Language and Environment for PROgramming with Graph REwrite Systems A. Schürr: Specification of Graph Translators with Triple Graph Grammars A. Schürr: Logic Based Programmed Structure Rewriting Systems L. Staiger: Codes, Simplifying Words, and Open Set Condition Bernhard Westfechtel: A Graph-Based System for Managing Configurations of Engineering Design Documents P. Klein: Designing Software with Modula I. Litovsky, L. Staiger: Finite acceptance of infinite words G. Hogen, R. Loogen: Parallel Functional Implementations: Graphbased vs. Stackbased Reduction M. Jeusfeld, U. Johnen: An Executable Meta Model for Re-Engineering of Database Schemas R. Gallersdörfer, M. Jarke, K. Klabunde: Intelligent Networks as a Data Intensive Application (INDIA) M. Mohnen: Proving the Correctness of the Static Link Technique Using Evolving Algebras H. Fernau, L. Staiger: Valuations and Unambiguity of Languages, with Applications to Fractal Geometry M. Jarke, K. Pohl, R. Dömges, St. Jacobs, H. W. Nissen: Requirements Information Management: The NATURE Approach M. Jarke, K. Pohl, C. Rolland, J.-R. Schmitt: Experience-Based Method Evaluation and Improvement: A Process Modeling Approach St. Jacobs,St. Kethers:ImprovingCommunicationand Decision Making within Quality Function Deployment M. Jarke, H. W. Nissen, K. Pohl: Tool Integration in Evolving Information Systems Environments 25

26 O. Burkart, D. Caucal, B. Steffen: An Elementary Bisimulation Decision Procedure for Arbitrary Context-Free Processes Fachgruppe Informatik: Jahresbericht Andy Schürr, Andreas J. Winter, Albert Zündorf: Graph Grammar Engineering with PROGRES Ludwig Staiger: A Tight Upper Bound on Kolmogorov Complexity by Hausdorff Dimension and Uniformly Optimal Prediction Birgitta König-Ries, Sven Helmer, Guido Moerkotte: An experimental study on the complexity of left-deep join ordering problems for cyclic queries Sophie Cluet, Guido Moerkotte: Efficient Evaluation of Aggregates on Bulk Types Sophie Cluet, Guido Moerkotte: Nested Queries in Object Bases Sophie Cluet, Guido Moerkotte: Query Optimization Techniques Exploiting Class Hierarchies Markus Mohnen: Efficient Compile-Time Garbage Collection for Arbitrary Data Structures Markus Mohnen: Functional Specification of Imperative Programs: An Alternative Point of View of Functional Languages Rainer Gallersdörfer, Matthias Nicola: Improving Performance in Replicated Databases through Relaxed Coherency M.Staudt, K.von Thadden: Subsumption Checking in Knowledge Bases G.V.Zemanek, H.W.Nissen, H.Hubert, M.Jarke: Requirements Analysis from Multiple Perspectives: Experiences with Conceptual Modeling Technology M.Staudt, M.Jarke:IncrementalMaintenance ofexternallymaterialized Views P.Peters, P.Szczurko, M.Jeusfeld: Oriented Information Management: Conceptual Models at Work Matthias Jarke, Sudha Ram (Hrsg.): WITS 95 Proceedings of the 5th Annual Workshop on Information Technologies and Systems W.Hans,St.Winkler,F.Saenz:DistributedExecutioninFunctionalLogic Programming Jahresbericht Michael Hanus, Christian Prehofer: Higher-Order Narrowing with Definitional Trees W.Scheufele, G.Moerkotte: Optimal Ordering of Selections and Joins in Acyclic Queries with Expensive Predicates Klaus Pohl: PRO-ART: Enabling Requirements Pre-Traceability Klaus Pohl: Requirements Engineering: An Overview M.Jarke,W.Marquardt:Designand EvaluationofComputer AidedProcess Modelling Tools Olaf Chitil: The Sigma-Semantics: A Comprehensive Semantics for Functional Programs 26

27 S.Sripada: On Entropy and the Limitations of the Second Law of Thermodynamics Michael Hanus (Ed.): Proceedings of the Poster Session of ALP96 - Fifth International Conference on Algebraic and Logic Programming Michael Hanus (Ed.): Proceedings of the Poster Session of ALP 96 - Fifth International Conference on Algebraic and Logic Programming: Introduction and table of contents Ilies Alouini: An Implementation of Conditional Concurrent Rewriting on Distributed Memory Machines Olivier Danvy, Karoline Malmkjær: On the Idempotence of the CPS Transformation Víctor M. Gulías, José L. Freire: Concurrent Programming in Haskell Sébastien Limet, Pierre Réty: On Decidability of Unifiability Modulo Rewrite Systems Alexandre Tessier: Declarative Debugging in Constraint Logic Programming Reidar Conradi, Bernhard Westfechtel: Version Models for Software Configuration Management C.Weise, D.Lenzkes: A Fast Decision Algorithm for Timed Refinement R.Dömges, K.Pohl, M.Jarke, B.Lohmann, W.Marquardt: PRO- ART/CE* An Environment for Managing the Evolution of Chemical Process Simulation Models K.Pohl, R.Klamma, K.Weidenhaupt, R.Dömges, P.Haumer, M.Jarke: A Framework for Process-Integrated Tools R.Gallersdörfer, K.Klabunde, A.Stolz, M.Eßmajor: INDIA Intelligent Networks as a Data Intensive Application, Final Project Report, June H.Schimpe, M.Staudt: VAREX: An Environment for Validating and Refining Rule Bases M.Jarke,M.Gebhardt, S.Jacobs,H.Nissen: Conflict Analysis AcrossHeterogeneous Viewpoints: Formalization and Visualization Manfred A. Jeusfeld, Tung X. Bui: Decision Support Components on the Internet Manfred A. Jeusfeld, Mike Papazoglou: Information Brokering: Design, Search and Transformation P.Peters, M.Jarke: Simulating the impact of information flows in networked organizations Matthias Jarke, Peter Peters, Manfred A. Jeusfeld: Model-driven planning and design of cooperative information systems G.de Michelis, E.Dubois, M.Jarke, F.Matthes, J.Mylopoulos, K.Pohl, J.Schmidt, C.Woo, E.Yu: Cooperative information systems: a manifesto S.Jacobs, M.Gebhardt, S.Kethers, W.Rzasa: Filling HTML forms simultaneously: CoWeb architecture and functionality M.Gebhardt, S.Jacobs: Conflict Management in Design Michael Hanus, Frank Zartmann (eds.): Jahresbericht

28 Johannes Faassen: Using full parallel Boltzmann Machines for Optimization Andreas Winter, Andy Schürr: Modules and Updatable Graph Views for PROgrammed Graph REwriting Systems Markus Mohnen, Stefan Tobies: Implementing Context Patterns in the Glasgow Haskell Compiler S.Gruner: Schemakorrespondenzaxiome unterstützen die paargrammatische Spezifikation inkrementeller Integrationswerkzeuge Matthias Nicola, Matthias Jarke: Design and Evaluation of Wireless Health Care Information Systems in Developing Countries Petra Hofstedt: Taskparallele Skelette für irregulär strukturierte Probleme in deklarativen Sprachen Dorothea Blostein, Andy Schürr: Computing with Graphs and Graph Rewriting Carl-Arndt Krapp, Bernhard Westfechtel: Feedback Handling in Dynamic Task Nets Matthias Nicola, Matthias Jarke: Integrating Replication and Communication in Performance Models of Distributed Databases R. Klamma, P. Peters, M. Jarke: Workflow Support for Failure Management in Federated Organizations Markus Mohnen: Optimising the Memory Management of Higher-Order Functional Programs Roland Baumann: Client/Server Distribution in a Structure-Oriented Database Management System George Botorog: High-Level Parallel Programming and the Efficient Implementation of Numerical Algorithms Fachgruppe Informatik: Jahresbericht Stefan Gruner, Manfred Nagel, Andy Schürr: Fine-grained and Structure-Oriented Document Integration Tools are Needed for Development Processes Stefan Gruner: Einige Anmerkungen zur graphgrammatischen Spezifikation von Integrationswerkzeugen nach Westfechtel, Janning, Lefering und Schürr O. Kubitz: Mobile Robots in Dynamic Environments Martin Leucker, Stephan Tobies: Truth - A Verification Platform for Distributed Systems Matthias Oliver Berger: DECT in the Factory of the Future M. Arnold, M. Erdmann, M. Glinz, P. Haumer, R. Knoll, B. Paech, K. Pohl, J. Ryser, R. Studer, K. Weidenhaupt: Survey on the Scenario Use in Twelve Selected Industrial Projects Th. Lehmann: Geometrische Ausrichtung medizinischer Bilder am Beispiel intraoraler Radiographien M. Nicola, M. Jarke: Performance Modeling of Distributed and Replicated Databases 28

29 AnsgarSchleicher,BernhardWestfechtel,DirkJäger:ModelingDynamic Software Processes in UML W. Appelt, M. Jarke:InteroperableTools for CooperationSupport using the World Wide Web Klaus Indermark: Semantik rekursiver Funktionsdefinitionen mit Striktheitsinformation Jahresbericht F. Huch: Verifcation of Erlang Programs using Abstract Interpretation and Model Checking Extended Version R. Gallersdörfer, M. Jarke, M. Nicola: The ADR Replication Manager María Alpuente, Michael Hanus, Salvador Lucas, Germán Vidal: Specialization of Functional Logic Programs Based on Needed Narrowing W. Thomas (Ed.): DLT 99 - Developments in Language Theory Fourth International Conference Kai Jakobs, Klaus-Dieter Kleefeld: Informationssysteme für die angewandte historische Geographie Thomas Wilke: CTL+ is exponentially more succinct than CTL Oliver Matz: Dot-Depth and Monadic Quantifier Alternation over Pictures Jahresbericht Jens Vöge, Marcin Jurdzinski A Discrete Strategy Improvement Algorithm for Solving Parity Games D. Jäger, A. Schleicher, B. Westfechtel: UPGRADE: A Framework for Building Graph-Based Software Engineering Tools Andreas Becks, Stefan Sklorz, Matthias Jarke: Exploring the Semantic Structure of Technical Document Collections: A Cooperative Systems Approach Mareike Schoop: Cooperative Document Management Mareike Schoop, Christoph Quix(eds.): Proceedings of the Fifth International Workshop on the Language-Action Perspective on Communication Modelling Markus Mohnen, Pieter Koopman (Eds.): Proceedings of the 12th International Workshop of Functional Languages Thomas Arts, Thomas Noll: Verifying Generic Erlang Client-Server Implementations Jahresbericht Benedikt Bollig, Martin Leucker: Deciding LTL over Mazurkiewicz Traces Thierry Cachat: The power of one-letter rational languages Benedikt Bollig, Martin Leucker, Michael Weber: Local Parallel Model Checking for the Alternation Free mu-calculus Benedikt Bollig, Martin Leucker, Thomas Noll: Regular MSC Languages Achim Blumensath: Prefix-Recognisable Graphs and Monadic Second- Order Logic Martin Grohe, Stefan Wöhrle: An Existential Locality Theorem 29

Department of Computer Science. Joachim Kneis, Daniel Mölle, Stefan Richter, Peter Rossmanith. ISSN 0935 3232 Aachener Informatik Berichte AIB-2006-06

Department of Computer Science. Joachim Kneis, Daniel Mölle, Stefan Richter, Peter Rossmanith. ISSN 0935 3232 Aachener Informatik Berichte AIB-2006-06 Aachen Department of Computer Science Technical Report Divide-and-Color Joachim Kneis, Daniel Mölle, Stefan Richter, Peter Rossmanith ISSN 0935 3232 Aachener Informatik Berichte AIB-2006-06 RWTH Aachen

More information

Toward Low Static Memory Jacobian Accumulation

Toward Low Static Memory Jacobian Accumulation Aachen Department of Computer Science Technical Report Toward Low Static Memory Jacobian Accumulation Ebadollah Varnik, Uwe Naumann and Andrew Lyons ISSN 935 3232 Aachener Informatik Berichte AIB-26-4

More information

Aachen. Toward Adjoint OpenMP. Department of Computer Science. Technical Report. Michael Förster and Uwe Naumann and Jean Utke

Aachen. Toward Adjoint OpenMP. Department of Computer Science. Technical Report. Michael Förster and Uwe Naumann and Jean Utke Aachen Department of Computer Science Technical Report Toward Adjoint OpenMP Michael Förster and Uwe Naumann and Jean Utke ISSN 0935 3232 Aachener Informatik-Berichte AIB-2011-13 RWTH Aachen Department

More information

Aachen. A Counterexample to the Fully Mixed Nash Equilibrium Conjecture. Department of Computer Science. Technical Report

Aachen. A Counterexample to the Fully Mixed Nash Equilibrium Conjecture. Department of Computer Science. Technical Report Aachen Department of Computer Science Technical Report A Counterexample to the Fully Mixed Nash Equilibrium Conjecture Simon Fischer and Berthold Vöcking ISSN 0935 3232 Aachener Informatik Berichte AIB-2005-11

More information

Aachen. CD2Alloy: A Translation of Class Diagrams to Alloy. Department of Computer Science. Technical Report

Aachen. CD2Alloy: A Translation of Class Diagrams to Alloy. Department of Computer Science. Technical Report Aachen Department of Computer Science Technical Report CD2Alloy: A Translation of Class Diagrams to Alloy Shahar Maoz and Jan Oliver Ringert and Bernhard Rumpe ISSN 0935 3232 Aachener Informatik-Berichte

More information

Tampering with Motes: Real-World Physical Attacks on Wireless Sensor Networks

Tampering with Motes: Real-World Physical Attacks on Wireless Sensor Networks Aachen Department of Computer Science Technical Report Tampering with Motes: Real-World Physical Attacks on Wireless Sensor Networks Alexander Becher, Zinaida Benenson, Maximillian Dornseif ISSN 0935 3232

More information

Aachen. Achieving Highly Reliable Embedded Software: An empirical evaluation of different approaches. Department of Computer Science.

Aachen. Achieving Highly Reliable Embedded Software: An empirical evaluation of different approaches. Department of Computer Science. Aachen Department of Computer Science Technical Report Achieving Highly Reliable Embedded Software: An empirical evaluation of different approaches Falk Salewski and Stefan Kowalewski ISSN 0935 3232 Aachener

More information

Aachen. An Operational Semantics for Activity Diagrams using SMV. Department of Computer Science. Technical Report

Aachen. An Operational Semantics for Activity Diagrams using SMV. Department of Computer Science. Technical Report Aachen Department of Computer Science Technical Report An Operational Semantics for Activity Diagrams using SMV Shahar Maoz and Jan Oliver Ringert and Bernhard Rumpe ISSN 0935 3232 Aachener Informatik-Berichte

More information

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as

More information

School of Computer Science

School of Computer Science School of Computer Science Computer Science - Honours Level - 2014/15 October 2014 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level

More information

Division of Mathematical Sciences

Division of Mathematical Sciences Division of Mathematical Sciences Chair: Mohammad Ladan, Ph.D. The Division of Mathematical Sciences at Haigazian University includes Computer Science and Mathematics. The Bachelor of Science (B.S.) degree

More information

OpenFOAM Optimization Tools

OpenFOAM Optimization Tools OpenFOAM Optimization Tools Henrik Rusche and Aleks Jemcov h.rusche@wikki-gmbh.de and a.jemcov@wikki.co.uk Wikki, Germany and United Kingdom OpenFOAM Optimization Tools p. 1 Agenda Objective Review optimisation

More information

Doctor of Philosophy in Computer Science

Doctor of Philosophy in Computer Science Doctor of Philosophy in Computer Science Background/Rationale The program aims to develop computer scientists who are armed with methods, tools and techniques from both theoretical and systems aspects

More information

Master of Science in Computer Science

Master of Science in Computer Science Master of Science in Computer Science Background/Rationale The MSCS program aims to provide both breadth and depth of knowledge in the concepts and techniques related to the theory, design, implementation,

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

Master s Program in Information Systems

Master s Program in Information Systems The University of Jordan King Abdullah II School for Information Technology Department of Information Systems Master s Program in Information Systems 2006/2007 Study Plan Master Degree in Information Systems

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

Introduction to ODE solvers and their application in OpenFOAM

Introduction to ODE solvers and their application in OpenFOAM Introduction to ODE solvers and their application in OpenFOAM Gu Zongyuan Department of Mathematical Science March 8, 2009 Contents 1 Introduction 2 1.1 Methods to solve ODE.................................

More information

FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES

FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY Please note! This is a preliminary list of courses for the study year 2016/2017. Changes may occur! AUTUMN 2016 BACHELOR COURSES DIP217 Applied Software

More information

A DISCRETE ADJOINT VERSION OF AN UNSTEADY INCOMPRESSIBLE SOLVER FOR OPENFOAM USING ALGORITHMIC DIFFERENTIATION

A DISCRETE ADJOINT VERSION OF AN UNSTEADY INCOMPRESSIBLE SOLVER FOR OPENFOAM USING ALGORITHMIC DIFFERENTIATION 11th World Congress on Computational Mechanics (WCCM XI) 5th European Conference on Computational Mechanics (ECCM V) 6th European Conference on Computational Fluid Dynamics (ECFD VI) E. Oñate, J. Oliver

More information

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008 Professional Organization Checklist for the Computer Science Curriculum Updates Association of Computing Machinery Computing Curricula 2008 The curriculum guidelines can be found in Appendix C of the report

More information

MEng, BSc Applied Computer Science

MEng, BSc Applied Computer Science School of Computing FACULTY OF ENGINEERING MEng, BSc Applied Computer Science Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give a machine instructions

More information

Information and Communications Technology Courses at a Glance

Information and Communications Technology Courses at a Glance Information and Communications Technology Courses at a Glance Level 1 Courses ICT121 Introduction to Computer Systems Architecture This is an introductory course on the architecture of modern computer

More information

Botnet Tracking: Exploring a Root-Cause Methodology to Prevent Distributed Denial-of-Service Attacks

Botnet Tracking: Exploring a Root-Cause Methodology to Prevent Distributed Denial-of-Service Attacks Aachen Department of Computer Science Technical Report Botnet Tracking: Exploring a Root-Cause Methodology to Prevent Distributed Denial-of-Service Attacks Felix C. Freiling and Thorsten Holz and Georg

More information

MEng, BSc Computer Science with Artificial Intelligence

MEng, BSc Computer Science with Artificial Intelligence School of Computing FACULTY OF ENGINEERING MEng, BSc Computer Science with Artificial Intelligence Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give

More information

Aachen. Syntax-Directed Derivative Code (Part I: Tangent-Linear Code) Department of Computer Science. Technical Report.

Aachen. Syntax-Directed Derivative Code (Part I: Tangent-Linear Code) Department of Computer Science. Technical Report. Aachen Department of Computer Science Technical Report Syntax-Directed Derivative Code (Part I: Tangent-Linear Code) Uwe Naumann ISSN 0935 3232 Aachener Informatik Berichte AIB-2005-16 RWTH Aachen Department

More information

Masters in Human Computer Interaction

Masters in Human Computer Interaction Masters in Human Computer Interaction Programme Requirements Taught Element, and PG Diploma in Human Computer Interaction: 120 credits: IS5101 CS5001 CS5040 CS5041 CS5042 or CS5044 up to 30 credits from

More information

Static Program Transformations for Efficient Software Model Checking

Static Program Transformations for Efficient Software Model Checking Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major

More information

Lecture 03 (04.11.2013) Quality of the Software Development Process

Lecture 03 (04.11.2013) Quality of the Software Development Process Systeme hoher Qualität und Sicherheit Universität Bremen, WS 2013/14 Lecture 03 (04.11.2013) Quality of the Software Development Process Christoph Lüth Christian Liguda Your Daily Menu Models of Software

More information

[Refer Slide Time: 05:10]

[Refer Slide Time: 05:10] Principles of Programming Languages Prof: S. Arun Kumar Department of Computer Science and Engineering Indian Institute of Technology Delhi Lecture no 7 Lecture Title: Syntactic Classes Welcome to lecture

More information

ML for the Working Programmer

ML for the Working Programmer ML for the Working Programmer 2nd edition Lawrence C. Paulson University of Cambridge CAMBRIDGE UNIVERSITY PRESS CONTENTS Preface to the Second Edition Preface xiii xv 1 Standard ML 1 Functional Programming

More information

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

Datavetenskapligt Program (kandidat) Computer Science Programme (master) Datavetenskapligt Program (kandidat) Computer Science Programme (master) Wolfgang Ahrendt Director Datavetenskap (BSc), Computer Science (MSc) D&IT Göteborg University, 30/01/2009 Part I D&IT: Computer

More information

DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING

DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING Fall 2000 The instructions contained in this packet are to be used as a guide in preparing the Departmental Computer Science Degree Plan Form for the Bachelor's

More information

Programming Language Pragmatics

Programming Language Pragmatics Programming Language Pragmatics THIRD EDITION Michael L. Scott Department of Computer Science University of Rochester ^ШШШШШ AMSTERDAM BOSTON HEIDELBERG LONDON, '-*i» ЩЛ< ^ ' m H NEW YORK «OXFORD «PARIS»SAN

More information

A Multi-layered Domain-specific Language for Stencil Computations

A Multi-layered Domain-specific Language for Stencil Computations A Multi-layered Domain-specific Language for Stencil Computations Christian Schmitt, Frank Hannig, Jürgen Teich Hardware/Software Co-Design, University of Erlangen-Nuremberg Workshop ExaStencils 2014,

More information

Masters in Computing and Information Technology

Masters in Computing and Information Technology Masters in Computing and Information Technology Programme Requirements Taught Element, and PG Diploma in Computing and Information Technology: 120 credits: IS5101 CS5001 or CS5002 CS5003 up to 30 credits

More information

Masters in Networks and Distributed Systems

Masters in Networks and Distributed Systems Masters in Networks and Distributed Systems Programme Requirements Taught Element, and PG Diploma in Networks and Distributed Systems: 120 credits: IS5101 CS5001 CS5021 CS4103 or CS5023 in total, up to

More information

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1 The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions

More information

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science Program Schedule CTech Computer Science Credits CS101 Computer Science I 3 MATH100 Foundations of Mathematics and

More information

COURSE TITLE COURSE DESCRIPTION

COURSE TITLE COURSE DESCRIPTION COURSE TITLE COURSE DESCRIPTION CS-00X COMPUTING EXIT INTERVIEW All graduating students are required to meet with their department chairperson/program director to finalize requirements for degree completion.

More information

Course Syllabus For Operations Management. Management Information Systems

Course Syllabus For Operations Management. Management Information Systems For Operations Management and Management Information Systems Department School Year First Year First Year First Year Second year Second year Second year Third year Third year Third year Third year Third

More information

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing CS Master Level Courses and Areas The graduate courses offered may change over time, in response to new developments in computer science and the interests of faculty and students; the list of graduate

More information

Masters in Advanced Computer Science

Masters in Advanced Computer Science Masters in Advanced Computer Science Programme Requirements Taught Element, and PG Diploma in Advanced Computer Science: 120 credits: IS5101 CS5001 up to 30 credits from CS4100 - CS4450, subject to appropriate

More information

CSCI 3136 Principles of Programming Languages

CSCI 3136 Principles of Programming Languages CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University Winter 2013 CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University

More information

Masters in Artificial Intelligence

Masters in Artificial Intelligence Masters in Artificial Intelligence Programme Requirements Taught Element, and PG Diploma in Artificial Intelligence: 120 credits: IS5101 CS5001 CS5010 CS5011 CS4402 or CS5012 in total, up to 30 credits

More information

Formal Engineering for Industrial Software Development

Formal Engineering for Industrial Software Development Shaoying Liu Formal Engineering for Industrial Software Development Using the SOFL Method With 90 Figures and 30 Tables Springer Contents Introduction 1 1.1 Software Life Cycle... 2 1.2 The Problem 4 1.3

More information

System Modelingg Models of Computation and their Applications Axel Jantsch Laboratory for Electronics and Computer Systems (LECS) Royal Institute of Technology, Stockholm, Sweden February 4, 2005 System

More information

INFORMATION TECHNOLOGY PROGRAM

INFORMATION TECHNOLOGY PROGRAM INFORMATION TECHNOLOGY PROGRAM The School of Information Technology offers a two-year bachelor degree program in Information Technology for students having acquired an advanced vocational certificate.

More information

Algebraic Recognizability of Languages

Algebraic Recognizability of Languages of Languages LaBRI, Université Bordeaux-1 and CNRS MFCS Conference, Prague, August 2004 The general problem Problem: to specify and analyse infinite sets by finite means The general problem Problem: to

More information

School of Computer Science

School of Computer Science School of Computer Science Computer Science - Honours Level - 2015/6 - August 2015 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level

More information

An Incomplete C++ Primer. University of Wyoming MA 5310

An Incomplete C++ Primer. University of Wyoming MA 5310 An Incomplete C++ Primer University of Wyoming MA 5310 Professor Craig C. Douglas http://www.mgnet.org/~douglas/classes/na-sc/notes/c++primer.pdf C++ is a legacy programming language, as is other languages

More information

Object-Oriented Software Specification in Programming Language Design and Implementation

Object-Oriented Software Specification in Programming Language Design and Implementation Object-Oriented Software Specification in Programming Language Design and Implementation Barrett R. Bryant and Viswanathan Vaidyanathan Department of Computer and Information Sciences University of Alabama

More information

Computer Science MS Course Descriptions

Computer Science MS Course Descriptions Computer Science MS Course Descriptions CSc I0400: Operating Systems Underlying theoretical structure of operating systems; input-output and storage systems, data management and processing; assembly and

More information

School of Computer Science

School of Computer Science Computer Science Honours Level 2013/14 August 2013 School of Computer Science Computer Science (CS) Modules CS3051 Software Engineering SCOTCAT Credits: 15 SCQF Level 9 Semester: 1 This module gives a

More information

Lecture 1: Introduction

Lecture 1: Introduction Programming Languages Lecture 1: Introduction Benjamin J. Keller Department of Computer Science, Virginia Tech Programming Languages Lecture 1 Introduction 2 Lecture Outline Preview History of Programming

More information

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program. Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to

More information

A Tool for Generating Partition Schedules of Multiprocessor Systems

A Tool for Generating Partition Schedules of Multiprocessor Systems A Tool for Generating Partition Schedules of Multiprocessor Systems Hans-Joachim Goltz and Norbert Pieth Fraunhofer FIRST, Berlin, Germany {hans-joachim.goltz,nobert.pieth}@first.fraunhofer.de Abstract.

More information

Dynamic Project and Workflow Management for Design Processes in Chemical Engineering

Dynamic Project and Workflow Management for Design Processes in Chemical Engineering Dynamic Project and Workflow Management for Design Processes in Chemical Engineering Markus Heller, Bernhard Westfechtel Computer Science III, RWTH Aachen, D-52056 Aachen, Germany Abstract Design processes

More information

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm

More information

Functional Programming. Functional Programming Languages. Chapter 14. Introduction

Functional Programming. Functional Programming Languages. Chapter 14. Introduction Functional Programming Languages Chapter 14 Introduction Functional programming paradigm History Features and concepts Examples: Lisp ML 1 2 Functional Programming Functional Programming Languages The

More information

Programming Languages

Programming Languages Programming Languages Qing Yi Course web site: www.cs.utsa.edu/~qingyi/cs3723 cs3723 1 A little about myself Qing Yi Ph.D. Rice University, USA. Assistant Professor, Department of Computer Science Office:

More information

HPC Deployment of OpenFOAM in an Industrial Setting

HPC Deployment of OpenFOAM in an Industrial Setting HPC Deployment of OpenFOAM in an Industrial Setting Hrvoje Jasak h.jasak@wikki.co.uk Wikki Ltd, United Kingdom PRACE Seminar: Industrial Usage of HPC Stockholm, Sweden, 28-29 March 2011 HPC Deployment

More information

Principles of Distributed Database Systems

Principles of Distributed Database Systems M. Tamer Özsu Patrick Valduriez Principles of Distributed Database Systems Third Edition

More information

ME6130 An introduction to CFD 1-1

ME6130 An introduction to CFD 1-1 ME6130 An introduction to CFD 1-1 What is CFD? Computational fluid dynamics (CFD) is the science of predicting fluid flow, heat and mass transfer, chemical reactions, and related phenomena by solving numerically

More information

M.S. Computer Science Program

M.S. Computer Science Program M.S. Computer Science Program Pre-requisite Courses The following courses may be challenged by sitting for the placement examination. CSC 500: Discrete Structures (3 credits) Mathematics needed for Computer

More information

Introduction to Engineering System Dynamics

Introduction to Engineering System Dynamics CHAPTER 0 Introduction to Engineering System Dynamics 0.1 INTRODUCTION The objective of an engineering analysis of a dynamic system is prediction of its behaviour or performance. Real dynamic systems are

More information

The Software Development Process

The Software Development Process Systeme hoher Qualität und Sicherheit Universität Bremen WS 2015/2016 Lecture 03 (26.10.2015) The Software Development Process Christoph Lüth Jan Peleska Dieter Hutter Your Daily Menu Models of software

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

Process Modelling from Insurance Event Log

Process Modelling from Insurance Event Log Process Modelling from Insurance Event Log P.V. Kumaraguru Research scholar, Dr.M.G.R Educational and Research Institute University Chennai- 600 095 India Dr. S.P. Rajagopalan Professor Emeritus, Dr. M.G.R

More information

Masters in Information Technology

Masters in Information Technology Computer - Information Technology MSc & MPhil - 2015/6 - July 2015 Masters in Information Technology Programme Requirements Taught Element, and PG Diploma in Information Technology: 120 credits: IS5101

More information

Lecture 03 (26.10.2015) The Software Development Process. Software Development Models. Where are we? Your Daily Menu.

Lecture 03 (26.10.2015) The Software Development Process. Software Development Models. Where are we? Your Daily Menu. Your Daily Menu Systeme hoher Qualität und Sicherheit Universität Bremen WS 2015/2016 Lecture 03 (26.10.2015) The Software Development Process Christoph Lüth Jan Peleska Dieter Hutter Models of software

More information

Master Degree Program in Computer Science (CS)

Master Degree Program in Computer Science (CS) Master Degree Program in Computer Science (CS) Students holding Bachelor s degree in Computer Science are accepted as graduate students, after meeting the general requirements stated below. Applicants

More information

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection

Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Martin Leucker Technische Universität München (joint work with Andreas Bauer, Christian Schallhart et. al) FLACOS

More information

LONG BEACH CITY COLLEGE MEMORANDUM

LONG BEACH CITY COLLEGE MEMORANDUM LONG BEACH CITY COLLEGE MEMORANDUM DATE: May 5, 2000 TO: Academic Senate Equivalency Committee FROM: John Hugunin Department Head for CBIS SUBJECT: Equivalency statement for Computer Science Instructor

More information

IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE OPERATORS

IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE OPERATORS Volume 2, No. 3, March 2011 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE

More information

Differentiating a Time-dependent CFD Solver

Differentiating a Time-dependent CFD Solver Differentiating a Time-dependent CFD Solver Presented to The AD Workshop, Nice, April 2005 Mohamed Tadjouddine & Shaun Forth Engineering Systems Department Cranfield University (Shrivenham Campus) Swindon

More information

Specific Simple Network Management Tools

Specific Simple Network Management Tools Specific Simple Network Management Tools Jürgen Schönwälder University of Osnabrück Albrechtstr. 28 49069 Osnabrück, Germany Tel.: +49 541 969 2483 Email: Web:

More information

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach Reusable Knowledge-based Components for Building Software Applications: A Knowledge Modelling Approach Martin Molina, Jose L. Sierra, Jose Cuena Department of Artificial Intelligence, Technical University

More information

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY COURSE MODULE (C, C++, DS) KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php info@kitestechnology.com technologykites@gmail.com Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

More information

Load Balancing and Switch Scheduling

Load Balancing and Switch Scheduling EE384Y Project Final Report Load Balancing and Switch Scheduling Xiangheng Liu Department of Electrical Engineering Stanford University, Stanford CA 94305 Email: liuxh@systems.stanford.edu Abstract Load

More information

Component visualization methods for large legacy software in C/C++

Component visualization methods for large legacy software in C/C++ Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University mcserep@caesar.elte.hu

More information

Software Verification: Infinite-State Model Checking and Static Program

Software Verification: Infinite-State Model Checking and Static Program Software Verification: Infinite-State Model Checking and Static Program Analysis Dagstuhl Seminar 06081 February 19 24, 2006 Parosh Abdulla 1, Ahmed Bouajjani 2, and Markus Müller-Olm 3 1 Uppsala Universitet,

More information

2010-2011 Assessment for Master s Degree Program Fall 2010 - Spring 2011 Computer Science Dept. Texas A&M University - Commerce

2010-2011 Assessment for Master s Degree Program Fall 2010 - Spring 2011 Computer Science Dept. Texas A&M University - Commerce 2010-2011 Assessment for Master s Degree Program Fall 2010 - Spring 2011 Computer Science Dept. Texas A&M University - Commerce Program Objective #1 (PO1):Students will be able to demonstrate a broad knowledge

More information

Winter 2016 Course Timetable. Legend: TIME: M = Monday T = Tuesday W = Wednesday R = Thursday F = Friday BREATH: M = Methodology: RA = Research Area

Winter 2016 Course Timetable. Legend: TIME: M = Monday T = Tuesday W = Wednesday R = Thursday F = Friday BREATH: M = Methodology: RA = Research Area Winter 2016 Course Timetable Legend: TIME: M = Monday T = Tuesday W = Wednesday R = Thursday F = Friday BREATH: M = Methodology: RA = Research Area Please note: Times listed in parentheses refer to the

More information

STCE. Outline. Introduction. Applications. Ongoing work. Summary. STCE RWTH-Aachen, Industrial Applications of discrete adjoint OpenFOAM, EuroAD 2014

STCE. Outline. Introduction. Applications. Ongoing work. Summary. STCE RWTH-Aachen, Industrial Applications of discrete adjoint OpenFOAM, EuroAD 2014 Industrial Applications of discrete adjoint OpenFOAM Arindam Sen Software and Tools for Computational Engineering Science RWTH Aachen University EuroAD 2014, Nice, 16-17. June 2014 Outline Introduction

More information

Quality and Reliability in CFD

Quality and Reliability in CFD Quality and Reliability in CFD Open Source Challenges Hrvoje Jasak Wikki Ltd, United Kingdom Faculty of Mechanical Engineering and Naval Architecture University of Zagreb, Croatia Quality and Reliability

More information

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS TEST DESIGN AND FRAMEWORK September 2014 Authorized for Distribution by the New York State Education Department This test design and framework document

More information

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc])

REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc]) 305 REGULATIONS FOR THE DEGREE OF MASTER OF SCIENCE IN COMPUTER SCIENCE (MSc[CompSc]) (See also General Regulations) Any publication based on work approved for a higher degree should contain a reference

More information

Semester Review. CSC 301, Fall 2015

Semester Review. CSC 301, Fall 2015 Semester Review CSC 301, Fall 2015 Programming Language Classes There are many different programming language classes, but four classes or paradigms stand out:! Imperative Languages! assignment and iteration!

More information

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies)

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Duration of Course: 6 Months Fees: Rs. 25,000/- (including Service Tax) Eligibility: B.E./B.Tech., M.Sc.(IT/ computer

More information

The SH-Verification Tool

The SH-Verification Tool From: FLAIRS-00 Proceedings. Copyright 2000, AAAI (www.aaai.org). All rights reserved. The SH-Verification Tool Peter Ochsenschläger and Jürgen Repp and Roland Rieke SIT Institute for Secure Telecooperation,

More information

Customer Training Material. Lecture 2. Introduction to. Methodology ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved.

Customer Training Material. Lecture 2. Introduction to. Methodology ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved. Lecture 2 Introduction to CFD Methodology Introduction to ANSYS FLUENT L2-1 What is CFD? Computational Fluid Dynamics (CFD) is the science of predicting fluid flow, heat and mass transfer, chemical reactions,

More information

How To Get A Computer Science Degree At Appalachian State

How To Get A Computer Science Degree At Appalachian State 118 Master of Science in Computer Science Department of Computer Science College of Arts and Sciences James T. Wilkes, Chair and Professor Ph.D., Duke University WilkesJT@appstate.edu http://www.cs.appstate.edu/

More information

Report on the Dagstuhl Seminar Data Quality on the Web

Report on the Dagstuhl Seminar Data Quality on the Web Report on the Dagstuhl Seminar Data Quality on the Web Michael Gertz M. Tamer Özsu Gunter Saake Kai-Uwe Sattler U of California at Davis, U.S.A. U of Waterloo, Canada U of Magdeburg, Germany TU Ilmenau,

More information

The Clean programming language. Group 25, Jingui Li, Daren Tuzi

The Clean programming language. Group 25, Jingui Li, Daren Tuzi The Clean programming language Group 25, Jingui Li, Daren Tuzi The Clean programming language Overview The Clean programming language first appeared in 1987 and is still being further developed. It was

More information

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications Harris Z. Zebrowitz Lockheed Martin Advanced Technology Laboratories 1 Federal Street Camden, NJ 08102

More information

Software Engineering

Software Engineering Software Engineering Lecture 06: Design an Overview Peter Thiemann University of Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Software Engineering SWT 1 / 35 The Design Phase Programming in

More information

Principles and Software Realization of a Multimedia Course on Theoretical Electrical Engineering Based on Enterprise Technology

Principles and Software Realization of a Multimedia Course on Theoretical Electrical Engineering Based on Enterprise Technology SERBIAN JOURNAL OF ELECTRICAL ENGINEERING Vol. 1, No. 1, November 2003, 81-87 Principles and Software Realization of a Multimedia Course on Theoretical Electrical Engineering Based on Enterprise Technology

More information

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology)

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology) ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology) Subject Description: This subject deals with discrete structures like set theory, mathematical

More information

OPNET - Network Simulator

OPNET - Network Simulator Simulations and Tools for Telecommunications 521365S: OPNET - Network Simulator Jarmo Prokkola Project Manager, M. Sc. (Tech.) VTT Technical Research Centre of Finland Kaitoväylä 1, Oulu P.O. Box 1100,

More information