Cuneiform. A Functional Workflow Language Implementation in Erlang. Jörgen Brandt Humboldt-Universität zu Berlin
|
|
- Frederick Young
- 6 years ago
- Views:
Transcription
1 Cuneiform A Functional Workflow Language Implementation in Erlang Jörgen Brandt Humboldt-Universität zu Berlin Jörgen Brandt (HU Berlin) Cuneiform / 27
2 Cuneiform Cuneiform A Functional Language for Large Scale Scientific Data Analysis Jörgen Brandt (HU Berlin) Cuneiform / 27
3 Cuneiform Cuneiform A Functional Language for Large Scale Scientific Data Analysis Black-box operator model Pro: Operators can be any piece of software Jörgen Brandt (HU Berlin) Cuneiform / 27
4 Cuneiform Cuneiform A Functional Language for Large Scale Scientific Data Analysis Black-box operator model Pro: Operators can be any piece of software Black-box data model Pro: Input and Output data can be anything Jörgen Brandt (HU Berlin) Cuneiform / 27
5 Cuneiform Cuneiform A Functional Language for Large Scale Scientific Data Analysis Black-box operator model Pro: Operators can be any piece of software Black-box data model Pro: Input and Output data can be anything Features of advanced workflow languages Abstractions, lists, operations on lists, conditions Jörgen Brandt (HU Berlin) Cuneiform / 27
6 Cuneiform Cuneiform A Functional Language for Large Scale Scientific Data Analysis Black-box operator model Pro: Operators can be any piece of software Black-box data model Pro: Input and Output data can be anything Features of advanced workflow languages Abstractions, lists, operations on lists, conditions Light-weight Foreign Function Interface (FFI) Wrapping in R, Matlab, Octave, Python, Lisp, Perl, Bash Jörgen Brandt (HU Berlin) Cuneiform / 27
7 Cuneiform Cuneiform A Functional Language for Large Scale Scientific Data Analysis Black-box operator model Pro: Operators can be any piece of software Black-box data model Pro: Input and Output data can be anything Features of advanced workflow languages Abstractions, lists, operations on lists, conditions Light-weight Foreign Function Interface (FFI) Wrapping in R, Matlab, Octave, Python, Lisp, Perl, Bash Automatic parallelization Scalability with large data sets Jörgen Brandt (HU Berlin) Cuneiform / 27
8 Motivation New hardware is increasingly parallel, so new programming languages must support concurrency or they will die. Joe Armstrong Jörgen Brandt (HU Berlin) Cuneiform / 27
9 New Hardware Jo rgen Brandt (HU Berlin) Cuneiform / 27
10 DNA Sequencing is becoming cheap Jörgen Brandt (HU Berlin) Cuneiform / 27
11 Decentralized software development Jörgen Brandt (HU Berlin) Cuneiform / 27
12 Scientific Workflow Systems Jörgen Brandt (HU Berlin) Cuneiform / 27
13 Scientific Workflow Systems Workflows as DAGs Scientific Workflows are DAGs Jo rgen Brandt (HU Berlin) Cuneiform / 27
14 Scientific Workflow Systems Workflows as DAGs Scientific Workflows are DAGs Nodes are tasks Jo rgen Brandt (HU Berlin) Cuneiform / 27
15 Scientific Workflow Systems Workflows as DAGs Scientific Workflows are DAGs Nodes are tasks Edges are data dependencies Jo rgen Brandt (HU Berlin) Cuneiform / 27
16 Example: Galaxy Workflow System Focus on Usability Jörgen Brandt (HU Berlin) Cuneiform / 27
17 Example: Galaxy Workflow System Focus on Usability Integration of tools/libraries Jörgen Brandt (HU Berlin) Cuneiform / 27
18 Example: Galaxy Workflow System Focus on Usability Systematic documentation Integration of tools/libraries Jörgen Brandt (HU Berlin) Cuneiform / 27
19 Example: Galaxy Workflow System Focus on Usability Systematic documentation Integration of tools/libraries Reproducibility Jörgen Brandt (HU Berlin) Cuneiform / 27
20 The Next Generation Sequencing use case Jörgen Brandt (HU Berlin) Cuneiform / 27
21 The Next Generation Sequencing use case Jörgen Brandt (HU Berlin) Cuneiform / 27
22 The Next Generation Sequencing use case Jo rgen Brandt (HU Berlin) Cuneiform / 27
23 The Next Generation Sequencing use case Jo rgen Brandt (HU Berlin) Cuneiform / 27
24 The Next Generation Sequencing use case Jo rgen Brandt (HU Berlin) Cuneiform / 27
25 Desired Features in a Language Is there a language that is... Jörgen Brandt (HU Berlin) Cuneiform / 27
26 Desired Features in a Language Is there a language that is... Like a workflow language So we can integrate all the tools Jörgen Brandt (HU Berlin) Cuneiform / 27
27 Desired Features in a Language Is there a language that is... Like a workflow language So we can integrate all the tools Like MapReduce So we can derive parallelism and distribute the work Jörgen Brandt (HU Berlin) Cuneiform / 27
28 Desired Features in a Language Is there a language that is... Like a workflow language So we can integrate all the tools Like MapReduce So we can derive parallelism and distribute the work Like a functional programming language So we can write arbitrary programs using lists and operations on lists Jörgen Brandt (HU Berlin) Cuneiform / 27
29 Cuneiform example deftask gunzip( out( File ) : gz( File ) )in bash *{ gzip -c -d $gz > $out }* Jörgen Brandt (HU Berlin) Cuneiform / 27
30 Cuneiform example deftask gunzip( out( File ) : gz( File ) )in bash *{ gzip -c -d $gz > $out }* gunzip gunzip( gz: 'myarchive1.gz' ); Jörgen Brandt (HU Berlin) Cuneiform / 27
31 Cuneiform example deftask gunzip( out( File ) : gz( File ) )in bash *{ gzip -c -d $gz > $out }* gunzip gunzip( gz: 'myarchive1.gz' 'myarchive2.gz' ); Jörgen Brandt (HU Berlin) Cuneiform / 27
32 Cuneiform example deftask gunzip( out( File ) : gz( File ) )in bash *{ gzip -c -d $gz > $out }* gunzip gunzip( gz: 'myarchive1.gz' 'myarchive2.gz' 'myarchive3.gz' ); Jörgen Brandt (HU Berlin) Cuneiform / 27
33 Workflow Implementations Available Available example workflows: Variant calling joergen7/variant-call samtools-faidx tophat-single fastq-dump cuffdiff cufflinks cummerbund cuffmerge Jörgen Brandt (HU Berlin) Cuneiform / 27
34 Workflow Implementations Available Available example workflows: Variant calling joergen7/variant-call Methylation joergen7/methylation samtools-faidx fastq-dump tophat-single cuffdiff cufflinks cummerbund cuffmerge Jörgen Brandt (HU Berlin) Cuneiform / 27
35 Workflow Implementations Available Available example workflows: Variant calling joergen7/variant-call Methylation joergen7/methylation RNA-Seq com/joergen7/rna-seq fastq-dump samtools-faidx tophat-single cuffdiff cufflinks cummerbund cuffmerge Jörgen Brandt (HU Berlin) Cuneiform / 27
36 Workflow Implementations Available Available example workflows: Variant calling joergen7/variant-call Methylation joergen7/methylation RNA-Seq com/joergen7/rna-seq etc (ChIP-Seq, mirna detection, consensus prediction,... ) fastq-dump samtools-faidx tophat-single cuffdiff cufflinks cummerbund cuffmerge Jörgen Brandt (HU Berlin) Cuneiform / 27
37 Cuneiform Operational Semantics Jörgen Brandt (HU Berlin) Cuneiform / 27
38 Program Interpretation in Cuneiform Current design in Java implementation: EBNF Parser Generator (ANTLR) Scanner/ Transcrip on Abstract Program Parse tree Interpreter Result Parser Visitor Program Jörgen Brandt (HU Berlin) Cuneiform / 27
39 Program Interpretation in Cuneiform Designated design but never implemented: EBNF Opera onal Seman cs Parser Generator (ANTLR) Program Extrac on (?) Scanner/ Transcrip on Abstract Program Parse tree Interpreter Result Parser Visitor Program Jörgen Brandt (HU Berlin) Cuneiform / 27
40 Program Interpretation in Cuneiform Designated design in Erlang: EBNF Opera onal Seman cs Parser Generator (ANTLR) Program Extrac on (?) Scanner/ Transcrip on Abstract Program Parse tree Interpreter Result Parser Visitor Program Jörgen Brandt (HU Berlin) Cuneiform / 27
41 The eval Function fun eval(expr, ρ, GetFuture, Global, Fin) Result when Expr :: expr ρ :: string => expr GetFuture :: fun Global :: string => lam Fin :: id => expr Result :: expr Jörgen Brandt (HU Berlin) Cuneiform / 27
42 The eval Function fun eval(expr, ρ, GetFuture, Global, Fin) Result when Expr :: expr ρ :: string => expr GetFuture :: fun Global :: string => lam Fin :: id => expr Result :: expr Expr The expression to be evaluated Jörgen Brandt (HU Berlin) Cuneiform / 27
43 The eval Function fun eval(expr, ρ, GetFuture, Global, Fin) Result when Expr :: expr ρ :: string => expr GetFuture :: fun Global :: string => lam Fin :: id => expr Result :: expr Expr The expression to be evaluated ρ Current scope Jörgen Brandt (HU Berlin) Cuneiform / 27
44 The eval Function fun eval(expr, ρ, GetFuture, Global, Fin) Result when Expr :: expr ρ :: string => expr GetFuture :: fun Global :: string => lam Fin :: id => expr Result :: expr Expr The expression to be evaluated ρ Current scope GetFuture A function returning a future for a foreign task application Jörgen Brandt (HU Berlin) Cuneiform / 27
45 The eval Function fun eval(expr, ρ, GetFuture, Global, Fin) Result when Expr :: expr ρ :: string => expr GetFuture :: fun Global :: string => lam Fin :: id => expr Result :: expr Expr The expression to be evaluated ρ Current scope GetFuture A function returning a future for a foreign task application Global Task definitions Jörgen Brandt (HU Berlin) Cuneiform / 27
46 The eval Function fun eval(expr, ρ, GetFuture, Global, Fin) Result when Expr :: expr ρ :: string => expr GetFuture :: fun Global :: string => lam Fin :: id => expr Result :: expr Expr The expression to be evaluated ρ Current scope GetFuture A function returning a future for a foreign task application Global Task definitions Fin Results of foreign task applications Jörgen Brandt (HU Berlin) Cuneiform / 27
47 The eval Function fun eval(expr, ρ, GetFuture, Global, Fin) Result when Expr :: expr ρ :: string => expr GetFuture :: fun Global :: string => lam Fin :: id => expr Result :: expr Expr The expression to be evaluated ρ Current scope GetFuture A function returning a future for a foreign task application Global Task definitions Fin Results of foreign task applications Result The result of evaluation (may contain futures) Jörgen Brandt (HU Berlin) Cuneiform / 27
48 Computational Semantics eval(expr, ρ, GetFuture, Global, Fin) Next = step(expr, ρ, GetFuture, Global, Fin) case Next of Expr Expr eval(next, ρ, GetFuture, Global, Fin) end Jörgen Brandt (HU Berlin) Cuneiform / 27
49 Computational Semantics eval(expr, ρ, GetFuture, Global, Fin) Next = step(expr, ρ, GetFuture, Global, Fin) case Next of Expr Expr eval(next, ρ, GetFuture, Global, Fin) end single step is computed Jörgen Brandt (HU Berlin) Cuneiform / 27
50 Computational Semantics eval(expr, ρ, GetFuture, Global, Fin) Next = step(expr, ρ, GetFuture, Global, Fin) case Next of Expr Expr eval(next, ρ, GetFuture, Global, Fin) end single step is computed If the step has no effect evaluation terminates Jörgen Brandt (HU Berlin) Cuneiform / 27
51 Computational Semantics fun eval(expr, ρ, GetFuture, Global, Fin) Next = step(expr, ρ, GetFuture, Global, Fin) case Next of Expr Expr eval(next, ρ, GetFuture, Global, Fin) end single step is computed If the step has no effect evaluation terminates Otherwise eval is called recursively Jörgen Brandt (HU Berlin) Cuneiform / 27
52 Languages Suitable for Operational Semantics Common Lisp Choosing a language Functional Language Haskell Scala Erlang ML Jörgen Brandt (HU Berlin) Cuneiform / 27
53 Formalisms Suitable for Operational Semantics Common Lisp Choosing a language Functional Language With Pattern Matching Haskell Scala Erlang ML Jörgen Brandt (HU Berlin) Cuneiform / 27
54 Formalisms Suitable for Operational Semantics Common Lisp Choosing a language Functional Language With Pattern Matching Concurrency Orientation Haskell Scala Erlang ML Jörgen Brandt (HU Berlin) Cuneiform / 27
55 Program Interpretation in Cuneiform New design: EBNF Opera onal Seman cs Parser Generator (Leex/Yecc) Compiler (Erlang) Scanner/ Abstract Program Interpreter Result Parser Program Jörgen Brandt (HU Berlin) Cuneiform / 27
56 Program Interpretation in Cuneiform New design: EBNF Opera onal Seman cs Parser Generator (Leex/Yecc) Compiler (Erlang) Scanner/ Abstract Program Interpreter Result Parser Program Jörgen Brandt (HU Berlin) Cuneiform / 27
57 Fault Tolerance Jörgen Brandt (HU Berlin) Cuneiform / 27
58 Two types of complexity n Processes Distributed applications can be complex in two independent ways: n Tasks Jörgen Brandt (HU Berlin) Cuneiform / 27
59 Two types of complexity n Processes Distributed applications can be complex in two independent ways: in the number of processes involved to compute one task the more system components the more likely one component fails n Tasks Jörgen Brandt (HU Berlin) Cuneiform / 27
60 Two types of complexity n Processes n Tasks Distributed applications can be complex in two independent ways: in the number of processes involved to compute one task the more system components the more likely one component fails in the number of tasks contributing to a workflow the more tasks the more likely one task fails Jörgen Brandt (HU Berlin) Cuneiform / 27
61 Two types of complexity n Processes n Tasks Distributed applications can be complex in two independent ways: in the number of processes involved to compute one task the more system components the more likely one component fails in the number of tasks contributing to a workflow the more tasks the more likely one task fails Jörgen Brandt (HU Berlin) Cuneiform / 27
62 Two types of complexity n Processes n Tasks Distributed applications can be complex in two independent ways: in the number of processes involved to compute one task the more system components the more likely one component fails in the number of tasks contributing to a workflow the more tasks the more likely one task fails Jörgen Brandt (HU Berlin) Cuneiform / 27
63 Distributed Application: Workflow System Query Query Query Jörgen Brandt (HU Berlin) Cuneiform / 27
64 Distributed Application: Workflow System Query Query Query Cache Jörgen Brandt (HU Berlin) Cuneiform / 27
65 Distributed Application: Workflow System Query Query Query Cache Scheduler Jörgen Brandt (HU Berlin) Cuneiform / 27
66 Distributed Application: Workflow System Query Query Query Cache Scheduler FS Work FS Work FS Work Jörgen Brandt (HU Berlin) Cuneiform / 27
67 How to achieve fault tolerance when Jörgen Brandt (HU Berlin) Cuneiform / 27
68 How to achieve fault tolerance when Workflow systems are complex in both Number of processes involved in computing one task Number of tasks in one workflow so failures are likely Jörgen Brandt (HU Berlin) Cuneiform / 27
69 How to achieve fault tolerance when Workflow systems are complex in both Number of processes involved in computing one task Number of tasks in one workflow so failures are likely All components need to maintain state so plain restarting of components is not enough Jörgen Brandt (HU Berlin) Cuneiform / 27
70 How to achieve fault tolerance when Workflow systems are complex in both Number of processes involved in computing one task Number of tasks in one workflow so failures are likely All components need to maintain state so plain restarting of components is not enough Restarting of workflow helps only if workflows are small and system has few components Jörgen Brandt (HU Berlin) Cuneiform / 27
71 Generic process behaviour Golden path: P 1 sends request to P 2 P1 request P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
72 Generic process behaviour Golden path: P 1 sends request to P 2 Asynchronously P 1 receives reply P1 reply request P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
73 Generic process behaviour P 2 may fail: P 1 sends request to P 2 P 2 fails P1 request P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
74 Generic process behaviour monitor P 2 may fail: P 1 sends request to P 2 P 1 creates monitor on P 2 P1 request P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
75 Generic process behaviour monitor P 2 may fail: P 1 sends request to P 2 P 1 creates monitor on P 2 P 1 memorizes request P1 request P2 { } Jörgen Brandt (HU Berlin) Cuneiform / 27
76 Generic process behaviour monitor P 2 may fail: P 1 sends request to P 2 P 1 creates monitor on P 2 P 1 memorizes request P 2 fails P1 request P2 { } Jörgen Brandt (HU Berlin) Cuneiform / 27
77 Generic process behaviour P 2 may fail: P 1 sends request to P 2 P 1 creates monitor on P 2 P 1 memorizes request P 2 fails P1 P2 P 2 supervisor restarts P 2 { } Jörgen Brandt (HU Berlin) Cuneiform / 27
78 Generic process behaviour P 2 may fail: monitor P 1 sends request to P 2 P 1 creates monitor on P 2 P 1 memorizes request P 2 fails P 2 supervisor restarts P 2 P1 request P2 request is replayed to P 2 monitor is recreated { } Jörgen Brandt (HU Berlin) Cuneiform / 27
79 Generic process behaviour P 1 may fail: P 1 sends request to P 2 P 1 fails P1 request P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
80 Generic process behaviour monitor P 1 may fail: P 1 sends request to P 2 P 2 creates monitor on P 1 P1 request P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
81 Generic process behaviour monitor P 1 may fail: P 1 sends request to P 2 P 2 creates monitor on P 1 P 1 fails P1 request P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
82 Generic process behaviour P 1 may fail: P 1 sends request to P 2 P 2 creates monitor on P 1 P 1 fails request is canceled supervisor restarts P 1 P1 P2 Jörgen Brandt (HU Berlin) Cuneiform / 27
83 Conclusion untar Cuneiform: gunzip bowtie2-build bowtie2-align samtools-view samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
84 Conclusion untar Cuneiform: Functional gunzip bowtie2-build bowtie2-align samtools-view samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
85 Conclusion untar Cuneiform: Functional Integrate anything gunzip bowtie2-build bowtie2-align samtools-view samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
86 Conclusion untar Cuneiform: Functional Integrate anything Parallelism gunzip bowtie2-build bowtie2-align samtools-view samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
87 Conclusion untar Cuneiform: Functional Integrate anything Parallelism gunzip bowtie2-build bowtie2-align samtools-view Runs on Hadoop samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
88 Conclusion untar Cuneiform: Functional Integrate anything Parallelism Runs on Hadoop Implementation in Erlang: gunzip bowtie2-build bowtie2-align samtools-view samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
89 Conclusion untar Cuneiform: Functional Integrate anything Parallelism Runs on Hadoop Implementation in Erlang: Concise stateless semantics gunzip bowtie2-build bowtie2-align samtools-view samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
90 Conclusion untar Cuneiform: Functional Integrate anything Parallelism Runs on Hadoop Implementation in Erlang: Concise stateless semantics Fine-grained fault tolerance gunzip bowtie2-build bowtie2-align samtools-view samtools-sort samtools-faidx samtools-mpileup varscan annovar Jörgen Brandt (HU Berlin) Cuneiform / 27
The Cooperative Cleaners Case Study: Modelling and Analysis in Real-Time ABS
: Modelling and Analysis in Real-Time ABS Silvia Lizeth Tapia Tarifa Precise Modelling and Analysis University of Oslo sltarifa@ifi.uio.no 29.11.2013 S. Lizeth Tapia Tarifa Outline Motivation 1 Motivation
More informationAn Architectural Approach for Improving Availability in Web Services
An Architectural Approach for Improving Availability in Web Services Evangelos Parchas and Rogério de Lemos Computing Laboratory - University of Kent at Canterbury, UK Motivation Architectural pattern
More informationLecture 04 ( ) Hazard Analysis. Systeme hoher Qualität und Sicherheit Universität Bremen WS 2015/2016
Systeme hoher Qualität und Sicherheit Universität Bremen WS 2015/2016 Lecture 04 (02.11.2015) Hazard Analysis Christoph Lüth Jan Peleska Dieter Hutter Where are we? 01: Concepts of Quality 02: Legal Requirements:
More informationTHE CANDU 9 DISTRffiUTED CONTROL SYSTEM DESIGN PROCESS
THE CANDU 9 DISTRffiUTED CONTROL SYSTEM DESIGN PROCESS J.E. HARBER, M.K. KATTAN Atomic Energy of Canada Limited 2251 Speakman Drive, Mississauga, Ont., L5K 1B2 CA9900006 and M.J. MACBETH Institute for
More informationWe release Mascot Server 2.6 at the end of last year. There have been a number of changes and improvements in the search engine and reports.
1 We release Mascot Server 2.6 at the end of last year. There have been a number of changes and improvements in the search engine and reports. I ll also be covering some enhancements and changes in Mascot
More informationSafety Critical Systems
Safety Critical Systems Mostly from: Douglass, Doing Hard Time, developing Real-Time Systems with UML, Objects, Frameworks And Patterns, Addison-Wesley. ISBN 0-201-49837-5 1 Definitions channel a set of
More informationVirtual Breadboarding. John Vangelov Ford Motor Company
Virtual Breadboarding John Vangelov Ford Motor Company What is Virtual Breadboarding? Uses Vector s CANoe product, to simulate MATLAB Simulink models in a simulated or real vehicle environment. Allows
More informationWorking with Marker Maps Tutorial
Working with Marker Maps Tutorial Release 8.2.0 Golden Helix, Inc. September 25, 2014 Contents 1. Overview 2 2. Create Marker Map from Spreadsheet 4 3. Apply Marker Map to Spreadsheet 7 4. Add Fields
More informationh01: Perkovic Ch1 (Introduction to CS), 2.1, 2.2 (Expr, Vars, Assignment, Strings), 2.3 (Lists, Tuples)
Name: (as it would appear on official course roster) Umail address: Optional: name you wish to be called if different from name above. Optional: name of "homework buddy" (leaving this blank signifies "I
More informationImproving WCET Analysis for Synthesized Code from Matlab/Simulink/Stateflow. Lili Tan Compiler Design Lab Saarland University
Improving WCET Analysis for Synthesized Code from Matlab/Simulink/Stateflow Lili Tan Compiler Design Lab Saarland University Safety-Criticial Embedded Software WCET bound required for Scheduling >=0 Execution
More information2009 Solutions. (G) Sk8r. Languages are everywhere even in places where you don t expect them.
Languages are everywhere even in places where you don t expect them. Consider the combo rules of P-Little s Triple-I XTreem Hyp0th3tica7 Sk8boarding Game. In it, players press a series of buttons (left,
More informationSUPPLEMENT MATERIALS
SUPPLEMENT MATERIALS This document provides the implementation details of LW-FQZip 2 and the detailed experimental results of the comparison studies. 1. Implementation details of LW-FQZip 2 LW-FQZip 2
More information(C) Anton Setzer 2003 (except for pictures) A2. Hazard Analysis
A2. Hazard Analysis In the following: Presentation of analytical techniques for identifyin hazards. Non-formal, but systematic methods. Tool support for all those techniques exist. Techniques developed
More informationCT PET-2018 Part - B Phd COMPUTER APPLICATION Sample Question Paper
CT PET-2018 Part - B Phd COMPUTER APPLICATION Sample Question Paper Note: All Questions are compulsory. Each question carry one mark. 1. Error detection at the data link layer is achieved by? [A] Bit stuffing
More informationCritical Systems Validation
Critical Systems Validation Objectives To explain how system reliability can be measured and how reliability growth models can be used for reliability prediction To describe safety arguments and how these
More informationUsing MATLAB with CANoe
Version 2.0 2017-03-09 Application Note AN-IND-1-007 Author Restrictions Abstract Vector Informatik GmbH Public Document This application note describes the usage of MATLAB /Simulink combined with CANoe.
More informationHazard analysis. István Majzik Budapest University of Technology and Economics Dept. of Measurement and Information Systems
Hazard analysis István Majzik Budapest University of Technology and Economics Dept. of Measurement and Information Systems Hazard analysis Goal: Analysis of the fault effects and the evolution of hazards
More informationRedis Graph. A graph database built on top of redis
Redis Graph A graph database built on top of redis What s Redis? Open source in-memory database Key => Data Structure server Key features: Fast, Flexible, Simple A Lego for your database Key "I'm a Plain
More informationBreaking Up is Hard to Do: An Investigation of Decomposition for Assume-Guarantee Reasoning
Breaking Up is Hard to Do: An Investigation of Decomposition for Assume-Guarantee Reasoning Jamieson M. Cobleigh Dept. of Computer Science University of Massachusetts Amherst, MA 01003, USA jcobleig@cs.umass.edu
More informationA history-based estimation for LHCb job requirements
A history-based estimation for LHCb job requirements Nathalie Rauschmayr on behalf of LHCb Computing 13th April 2015 Introduction N. Rauschmayr 2 How long will a job run and how much memory might it need?
More informationFunctional safety. Functional safety of Programmable systems, devices & components: Requirements from global & national standards
Functional safety Functional safety of Programmable systems, devices & components: Requirements from global & national standards Matthias R. Heinze Vice President Engineering TUV Rheinland of N.A. Email
More informationUninformed Search (Ch )
1 Uninformed Search (Ch. 3-3.4) 7 Small examples 8-Queens: how to fit 8 queens on a 8x8 board so no 2 queens can capture each other Two ways to model this: Incremental = each action is to add a queen to
More informationSafety Manual VEGAVIB series 60
Safety Manual VEGAVIB series 60 NAMUR Document ID: 32005 Contents Contents 1 Functional safety... 3 1.1 General information... 3 1.2 Planning... 4 1.3 Adjustment instructions... 6 1.4 Setup... 6 1.5 Reaction
More informationFailure modes and models
Part 5: Failure modes and models Course: Dependable Computer Systems 2007, Stefan Poledna, All rights reserved part 5, page 1 Failure modes The way a system can fail is called its failure mode. Failure
More information4. Hazard Analysis. Limitations of Formal Methods. Need for Hazard Analysis. Limitations of Formal Methods
4. Hazard Analysis We have seen limitations of formal verification of computer systems. Formal methods don t take into consideration hardware aspects. E.g. that the wires in a railway signalling system
More informationModeling of Hydraulic Hose Paths
Mechanical Engineering Conference Presentations, Papers, and Proceedings Mechanical Engineering 9-2002 Modeling of Hydraulic Hose Paths Kurt A. Chipperfield Iowa State University Judy M. Vance Iowa State
More informationUsing Perceptual Context to Ground Language
Using Perceptual Context to Ground Language David Chen Joint work with Joohyun Kim, Raymond Mooney Department of Computer Sciences, University of Texas at Austin 2009 IBM Statistical Machine Learning and
More informationThe Safety Case. Structure of Safety Cases Safety Argument Notation
The Safety Case Structure of Safety Cases Safety Argument Notation Budapest University of Technology and Economics Department of Measurement and Information Systems The safety case Definition (core): The
More informationPedestrian Dynamics: Models of Pedestrian Behaviour
Pedestrian Dynamics: Models of Pedestrian Behaviour John Ward 19 th January 2006 Contents Macro-scale sketch plan model Micro-scale agent based model for pedestrian movement Development of JPed Results
More informationThe Safety Case. The safety case
The Safety Case Structure of safety cases Safety argument notation Budapest University of Technology and Economics Department of Measurement and Information Systems The safety case Definition (core): The
More informationUsing what we have. Sherman Eagles SoftwareCPR.
Using what we have Sherman Eagles SoftwareCPR seagles@softwarecpr.com 2 A question to think about Is there a difference between a medical device safety case and any non-medical device safety case? Are
More informationWelcome to. Computer Science! Dr. Mircea Agapie Office: SCIENCE 213-C
Welcome to Computer Science! Dr. Mircea Agapie Office: SCIENCE 213-C agapie@tarleton.edu 254-968-0792 During the transition week (this week) we meet: Tue & Wed 9-11 AM Once the semester officially starts
More informationReal-Time & Embedded Systems
Real-Time & Embedded Systems Agenda Safety Critical Systems Project 6 continued Safety Critical Systems Safe enough looks different at 35,000 feet. Bruce Powell Douglass The Air Force has a perfect operating
More informationDATA MINING ON CRICKET DATA SET FOR PREDICTING THE RESULTS. Sushant Murdeshwar
DATA MINING ON CRICKET DATA SET FOR PREDICTING THE RESULTS by Sushant Murdeshwar A Project Report Submitted in Partial Fulfillment of the Requirements for the Degree of Master of Science in Computer Science
More informationSoftware Reliability 1
Software Reliability 1 Software Reliability What is software reliability? the probability of failure-free software operation for a specified period of time in a specified environment input sw output We
More informationInternational olympiads in Informatics in Kazakhstan. A. Iglikov Z. Gamezardashvili B. Matkarimov
International olympiads in Informatics in Kazakhstan A. Iglikov Z. Gamezardashvili B. Matkarimov Olympiads overview Till 2003: - National Olympiad in Informatics for secondary school students (organized
More informationCisco SIP Proxy Server (CSPS) Compliance Information
APPENDIX A Cisco SIP Proxy Server (CSPS) Compliance Information This appendix describes how the CSPS complies with the IETF definition of SIP (Internet Draft draft-ietf-sip-rfc2543bis-04.txt, based on
More informationGOLOMB Compression Technique For FPGA Configuration
GOLOMB Compression Technique For FPGA Configuration P.Hema Assistant Professor,EEE Jay Shriram Group Of Institutions ABSTRACT Bit stream compression is important in reconfigurable system design since it
More informationUSING COMPUTERIZED WORKFLOW SIMULATIONS TO ASSESS THE FEASIBILITY OF WHOLE SLIDE IMAGING: FULL ADOPTION IN A HIGH VOLUME HISTOLOGY LABORATORY
USING COMPUTERIZED WORKFLOW SIMULATIONS TO ASSESS THE FEASIBILITY OF WHOLE SLIDE IMAGING: FULL ADOPTION IN A HIGH VOLUME HISTOLOGY LABORATORY David McClintock, M.D. Fellow, Pathology Informatics Massachusetts
More information- 2 - Companion Web Site. Back Cover. Synopsis
Companion Web Site A Programmer's Introduction to C# by Eric Gunnerson ISBN: 1893115860 Apress 2000, 358 pages This book takes the C programmer through the all the details from basic to advanced-- of the
More informationFP15 Interface Valve. SIL Safety Manual. SIL SM.018 Rev 1. Compiled By : G. Elliott, Date: 30/10/2017. Innovative and Reliable Valve & Pump Solutions
SIL SM.018 Rev 1 FP15 Interface Valve Compiled By : G. Elliott, Date: 30/10/2017 FP15/L1 FP15/H1 Contents Terminology Definitions......3 Acronyms & Abbreviations...4 1. Introduction...5 1.1 Scope.. 5 1.2
More informationIntegrating Best of Breed Outage Management Systems with Mobile Data Systems. Abstract
Integrating Best of Breed Outage Management Systems with Mobile Data Systems Donald Shaw Partner ExtenSys Inc. 31 Plymbridge Crescent North York, ON M2P 1P4 Canada Telephone: (416) 481-1546 Fax: (416)
More informationA study on the relation between safety analysis process and system engineering process of train control system
A study on the relation between safety analysis process and system engineering process of train control system Abstract - In this paper, the relationship between system engineering lifecycle and safety
More informationC. Mokkapati 1 A PRACTICAL RISK AND SAFETY ASSESSMENT METHODOLOGY FOR SAFETY- CRITICAL SYSTEMS
C. Mokkapati 1 A PRACTICAL RISK AND SAFETY ASSESSMENT METHODOLOGY FOR SAFETY- CRITICAL SYSTEMS Chinnarao Mokkapati Ansaldo Signal Union Switch & Signal Inc. 1000 Technology Drive Pittsburgh, PA 15219 Abstract
More informationSpreading Activation in Soar: An Update
Spreading Activation in Soar: An Update Steven Jones Computer Science and Engineering, University of Michigan, Ann Arbor scijones@umich.edu June 13, 2016 Steven Jones (U-M) Spreading Activation in Soar
More informationPurpose: Hypothesis: Procedure:
Name: Block: Properties of Water Lab As we have discussed in class and on notes, water has many unique properties that are critical to life on Earth. The goal of this lab is to study the properties of
More informationUninformed Search (Ch )
1 Uninformed Search (Ch. 3-3.4) 3 Terminology review State: a representation of a possible configuration of our problem Action: -how our agent interacts with the problem -can be different depending on
More informationScalable Data Structure to Compress Next- Generation Sequencing Files and its Application to Compressive Genomics
Western Michigan University ScholarWorks at WMU Parallel Computing and Data Science Lab Technical Reports Computer Science Fall 2017 Scalable Data Structure to Compress Next- Generation Sequencing Files
More informationScience&Motion. SAM BalanceLab. Sports. control the invisible. Most advanced pressure plate for coaching
SAM BalanceLab Science&Motion Sports control the invisible Most advanced pressure plate for coaching Balance - the invisible key to success Stop the guesswork and start to rely on facts Science and Motion
More informationVisual Traffic Jam Analysis Based on Trajectory Data
Visual Traffic Jam Analysis Based on Trajectory Data Zuchao Wang, Min Lu, Xiaoru Yuan, Peking University Junping Zhang, Fudan University Huub van de Wetering, Technische Universiteit Eindhoven Introduction
More informationDESIGN AND ANALYSIS OF ALGORITHMS (DAA 2017)
DESIGN AND ANALYSIS OF ALGORITHMS (DAA 2017) Veli Mäkinen 12/05/2017 1 COURSE STRUCTURE 7 weeks: video lecture -> demo lecture -> study group -> exercise Video lecture: Overview, main concepts, algorithm
More informationOpen Research Online The Open University s repository of research publications and other research outputs
Open Research Online The Open University s repository of research publications and other research outputs Developing an intelligent table tennis umpiring system Conference or Workshop Item How to cite:
More informationTowards a Next-Generation Runtime Infrastructure Engine for Configuration Management Systems
University of Colorado, Boulder CU Scholar Computer Science Graduate Theses & Dissertations Computer Science Spring 1-1-2014 Towards a Next-Generation Runtime Infrastructure Engine for Configuration Management
More informationConfiguring Bidirectional Forwarding Detection for BGP
CHAPTER 7 Configuring Bidirectional Forwarding Detection for BGP This chapter describes how to configure Bidirectional Forwarding Detection (BFD) for BGP. This chapter includes the following sections:
More informationIteration: while, for, do while, Reading Input with Sentinels and User-defined Functions
Iteration: while, for, do while, Reading Input with Sentinels and User-defined Functions This programming assignment uses many of the ideas presented in sections 6 and 7 of the course notes. You are advised
More informationSession Objectives. At the end of the session, the participants should: Understand advantages of BFD implementation on S9700
BFD Features Session Objectives At the end of the session, the participants should: Understand advantages of BFD implementation on S9700 Understand when to use BFD on S9700 1 Contents BFD introduction
More informationDATA ITEM DESCRIPTION Title: Failure Modes, Effects, and Criticality Analysis Report
DATA ITEM DESCRIPTION Title: Failure Modes, Effects, and Criticality Analysis Report Number: Approval Date: 20160106 AMSC Number: N9616 Limitation: No DTIC Applicable: Yes GIDEP Applicable: Yes Defense
More informationRobust Task Execution: Procedural and Model-based. Outline. Desiderata: Robust Task-level Execution
Robust Task Execution: Procedural and Model-based Mission Goals and Environment Constraints Temporal Planner Temporal Network Solver Projective Task Expansion Initial Conditions Temporal Plan Dynamic Scheduling
More informationIndustrial Compressor Controls Standard Custom
Technical Seminars 2012 Industrial Compressor Controls Standard Custom CONTROLLING the power of ENERGY 1 TM 2 Woodward Compressor Controls Small Steam Turbine Driven Compressors (ITCC) 3 Simple Compressor
More informationModeling Planned and Unplanned Store Stops for the Scenario Based Simulation of Pedestrian Activity in City Centers
Modeling Planned and Unplanned Store Stops for the Scenario Based Simulation of Pedestrian Activity in City Centers Jan Dijkstra and Joran Jessurun Department of the Built Environment Eindhoven University
More informationESSENTIAL SAFETY RESOURCES
ESSENTIAL SAFETY RESOURCES GS-3018 HAZARD IDENTIFICATION AND RISK ASSESSMENT Originator: Safety Advisor s Signature: Type Name Approval: HSE Manager s Signature: Type Name Approval: Operations Manager
More informationThe only high-speed filling system for LPG cylinders in the world
GENERAL DESCRIPTION The only high-speed filling system for LPG cylinders in the world www.flexspeed.info All position numbers in the following description refer to the drawing FLEX- SPEED LAYOUT. The core
More informationModelling Today for the Future. Advanced Modelling Control Techniques
CwMAG 1 st Autumn Conference 2012 Modelling Today for the Future Advanced Modelling Control Techniques What are advanced modelling controls? Why do we have them? How can we use them? What are the differences
More informationSatoshi Yoshida and Takuya Kida Graduate School of Information Science and Technology, Hokkaido University
Satoshi Yoshida and Takuya Kida Graduate School of Information Science and Technology, Hokkaido University ompressed Pattern Matching ompressed Data Search Directly 0000 000000 Program Searching on ompressed
More informationReal-Time Models for Real-Time Analysis. Motivation
Real-Time Models for Real-Time nalysis Jamie Weber, Ph.D. Director of Operations, PowerWorld Corp. weber@ powerworld.com (217) 384-6330, ext 13 1 Motivation Power flow studies are done using a different
More informationMIKE Release General product news for Marine software products, tools & features. Nov 2018
MIKE Release 2019 General product news for Marine software products, tools & features Nov 2018 DHI 2012 MIKE 3 Wave FM New advanced phase-resolving 3D wave modelling product A MIKE 3 FM Wave model - why?
More information6/16/2010 DAG Execu>on Model, Work and Depth 1 DAG EXECUTION MODEL, WORK AND DEPTH
6/16/2010 DAG Execu>on Model, Work and Depth 1 DAG EXECUTION MODEL, WORK AND DEPTH 6/16/2010 DAG Execu>on Model, Work and Depth 2 Computa>onal Complexity of (Sequen>al) Algorithms Model: Each step takes
More informationAdaptability and Fault Tolerance
Adaptability and Fault Tolerance Rogério de Lemos University of Kent, UK Context: self-* and dependability; Focus: adaptability and fault tolerance; State of the art; Conclusions; Rogério de Lemos ICSE
More informationApproximate Grammar for Information Extraction
Approximate Grammar for Information Extraction Akshar Bharati, V.Sriram, B.Ravi Sekhar Reddy, Rajeev Sangal International Institute of Information Technology, Hyderabad {sriram,ravi_b}@gdit.iiit.net,{sangal}@iiit.net
More informationIntegrate Riverbed SteelHead. EventTracker v8.x and above
EventTracker v8.x and above Publication Date: March 27, 2018 Abstract This guide provides instructions to configure a Riverbed SteelHead to send its syslog to EventTracker Enterprise Scope The configurations
More informationBulgarian Olympiad in Informatics: Excellence over a Long Period of Time
Olympiads in Informatics, 2017, Vol. 11, 151 158 2017 IOI, Vilnius University DOI: 10.15388/ioi.2017.12 151 Bulgarian Olympiad in Informatics: Excellence over a Long Period of Time Emil KELEVEDJIEV 1,
More informationDrag racing system HL190 User Manual and installation guide
Drag racing system HL190 User Manual and installation guide Version 10/2015 TAG Heuer Timing Page 1 / 14 1. Global This software controls the whole Drag racing installation HL190. Combined with the Chronelec
More informationFRDS GEN II SIMULATOR WORKBOOK
FRDS GEN II SIMULATOR WORKBOOK Trotter Control Inc 2015 Document# Revision Revised 9001-0038 FRDS GEN II Simulator Workbook E 02/15/2015 by DC FRDS GEN II Simulator Workbook This workbook is a follow-on
More informationCC-Log: Drastically Reducing Storage Requirements for Robots Using Classification and Compression
CC-Log: Drastically Reducing Storage Requirements for Robots Using Classification and Compression Santiago Gonzalez, Vijay Chidambaram, Jivko Sinapov, and Peter Stone University of Texas at Austin 1 The
More informationSeries 3730 and Series 3731 EXPERTplus Valve Diagnostics with Partial Stroke Test (PST)
Series 3730 and Series 3731 EXPERTplus Valve Diagnostics with Partial Stroke Test (PST) Application Positioner firmware for early detection of control valve faults giving maintenance recommendations. Valid
More informationCourseware Sample F0
Electric Power / Controls Courseware Sample 85303-F0 A ELECTRIC POWER / CONTROLS COURSEWARE SAMPLE by the Staff of Lab-Volt Ltd. Copyright 2009 Lab-Volt Ltd. All rights reserved. No part of this publication
More informationPaul Burkhardt. May 19, 2016
GraphEx Symposium 2016 U.S. National Security Agency Research Directorate May 19, 2016 Graphs are everywhere! Why graph? Graph-theoretic approaches are appealing to many fields simple data abstraction
More informationOperating Instructions EB EN. Series 373x Electropneumatic Positioner Type 373x-5 EXPERT + with FOUNDATION fieldbus communication
Series 373x Electropneumatic Positioner Type 373x-5 EXPERT + with FOUNDATION fieldbus communication Fig. 1 Valve diagnostics with TROVIS-VIEW Operator Interface Operating Instructions EB 8388-5 EN Firmware
More informationGDC 2 Wire Control System
Golf Irrigation GDC 2 Wire Control System GDC 2 Wire System, Best Practices GDC Best Practices Wiring GDC Best Practices Not So Best Wiring GDC Best Practices Not So Best Wiring GDC Best Practices Not
More informationAutomated Steady and Transient CFD Analysis of Flow Over Complex Terrain for Risk Avoidance in Wind Turbine Micro-Siting
Automated Steady and Transient CFD Analysis of Flow Over Complex Terrain for Risk Avoidance in Wind Turbine Micro-Siting Global Flow Solutions, Vestas Wind Systems A/S Gregory S. Oxley, Yavor V. Hristov,
More informationHydraulic (Subsea) Shuttle Valves
SIL SM.009 0 Hydraulic (Subsea) Shuttle Valves Compiled By : G. Elliott, Date: 11/3/2014 Contents Terminology Definitions......3 Acronyms & Abbreviations..4 1. Introduction 5 1.1 Scope 5 1.2 Relevant Standards
More informationSpacecraft Simulation Tool. Debbie Clancy JHU/APL
FSW Workshop 2011 Using Flight Software in a Spacecraft Simulation Tool Debbie Clancy JHU/APL debbie.clancy@jhuapl.edu 443-778-7721 Agenda Overview of RBSP and FAST Technical Challenges Dropping FSW into
More informationOperating instructions Electrical switching facility pco
Operating instructions Electrical switching facility pco from software version V1.33 on TABLE OF CONTENTS 1. Before you start... 4 1.1 Brief description... 4 1.2 Using this manual... 4 2. pco integrated
More informationswmath - Challenges, Next Steps, and Outlook
swmath - Challenges, Next Steps, and Outlook Hagen Chrapary 1, 2, Wolfgang Dalitz 2, and Wolfram Sperber 1 1 FIZ Karlsruhe/zbMATH, Franklinstr. 11, 10587 Berlin, Germany 2 Zuse Institute Berlin (ZIB),
More informationCS Lecture 5. Vidroha debroy. Material adapted courtesy of Prof. Xiangnan Kong and Prof. Carolina Ruiz at Worcester Polytechnic Institute
CS 3353 Lecture 5 Vidroha debroy Material adapted courtesy of Prof. Xiangnan Kong and Prof. Carolina Ruiz at Worcester Polytechnic Institute Searching for a number Find a specific number 91-3 26 54 73
More informationMac Software Manual for FITstep Pro Version 2
Thank you for purchasing this product from Gopher. If you are not satisfied with any Gopher purchase for any reason at any time, contact us and we will replace the product, credit your account, or refund
More informationSafety Manual VEGAVIB series 60
Safety Manual VEGAVIB series 60 Contactless electronic switch Document ID: 32002 Contents Contents 1 Functional safety... 3 1.1 General information... 3 1.2 Planning... 4 1.3 Adjustment instructions...
More informationMWGen: A Mini World Generator
MWGen: A Mini World Generator Jianqiu Xu and Ralf Hartmut Güting Database Systems for New Applications, Mathematics and Computer Science FernUniversität in Hagen, Germany July, 2012 Outline 1 Problem Description
More informationReal World Search Problems. CS 331: Artificial Intelligence Uninformed Search. Simpler Search Problems. Example: Oregon. Search Problem Formulation
Real World Search Problems S 331: rtificial Intelligence Uninformed Search 1 2 Simpler Search Problems ssumptions bout Our Environment Fully Observable Deterministic Sequential Static Discrete Single-agent
More informationStrategy, Developments & Outlook SESP September 2010 ESTEC, Noordwijk, The Netherlands
Strategy, Developments & Outlook SESP 2010 28-30 September 2010 ESTEC, Noordwijk, The Netherlands Overview Introduction Strategy Upgraded courses New 4.2 features EuroSim 4.3 outlook EuroSim on a stick
More informationHorse Farm Management s Report Writer. User Guide Version 1.1.xx
Horse Farm Management s Report Writer User Guide Version 1.1.xx August 30, 2001 Before you start 3 Using the Report Writer 4 General Concepts 4 Running the report writer 6 Creating a new Report 7 Opening
More informationPurpose. Scope. Process flow OPERATING PROCEDURE 07: HAZARD LOG MANAGEMENT
SYDNEY TRAINS SAFETY MANAGEMENT SYSTEM OPERATING PROCEDURE 07: HAZARD LOG MANAGEMENT Purpose Scope Process flow This operating procedure supports SMS-07-SP-3067 Manage Safety Change and establishes the
More informationPetacat: Applying ideas from Copycat to image understanding
Petacat: Applying ideas from Copycat to image understanding How Streetscenes Works (Bileschi, 2006) 1. Densely tile the image with windows of different sizes. 2. HMAX C2 features are computed in each window.
More information01/26: Prototyping. Prototypes. Why? Answer Questions. Why? Determine Schedule. Speed (to Write) Why? Reduce Risk. Dr.
Prototypes 01/26: Department of Computer Science and Engineering Spring 2011 Developed Early Rapidly Implement Subset of the Requirements Done for Variety of Reasons Are Not Finished Goods Hacking (Good
More informationIntroduction to Matlab for Engineers
Introduction to Matlab for Engineers Instructor: Anh Thai Nhan Math 111, Ohlone Introduction to Matlab for Engineers Ohlone, Fremont 1/23 Reading materials Chapters 1, 2, and 3, Moore s textbook Introduction
More informationPerformance Visualization of Bubble Sort in Worst Case Using R Programming in Personal Computer
Performance Visualization of Bubble Sort in Worst Case Using R Programming in Personal Computer Dipankar Das 1, Priyanka Das 2, Rishab Dey 3, Sreya Modak 4 1 Assistant Professor, The Heritage Academy,
More informationIRB Staff Administration Guide
March 2013 Table of Contents IRB Process Overview 3 IRB Submission Types 3 Study Process Overview 4 Ancillary Review Overview 5 Initiating Ancillary Reviews 5 Notifications and Ancillary Review Feedback
More informationDP Station Keeping Event Bulletin
DP Station Keeping Event Bulletin IMCA DP Station Keeping Event Bulletin 04/17 October 2017 The following event trees have been compiled from recent reports received by IMCA. The originators granted IMCA
More informationApplications & Tools. Evaluation of the selection of a safetyrelated mode using non-safety-related components
Cover sheet Evaluation of the selection of a safetyrelated mode using non-safety-related components SINUMERIK 840D sl SINUMERIK Safety Integrated Application description February 2015 Applications & Tools
More informationTeam Description: Building Teams Using Roles, Responsibilities, and Strategies
Team Description: Building Teams Using Roles, Responsibilities, and Strategies Simon Ch'ng and Lin Padgham (schng cs. trait, edu. au) (linpa cs. rrait, edu. au) Department of Computer Science Royal Melbourne
More information