Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Gerald M. Karam

dblp:00/3202 · DBLP profile ↗
← Back
16ranked-venue papers
8as first author
1since 2021 · last 2022
0000-0003-1108-5356ORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 9 · 6 first-authorSystems, architecture and hardware · 2Applied, interdisciplinary, general and emerging computing · 2Artificial intelligence and machine learning · 1Computer networks · 1 · 1 first-author · 1 since 2021Databases, data management, data science and information retrieval · 1Theory of computation · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
5 papers
Concurrent programming · 55% Programming languages and type systems · 21% Program verification · 19%
Computer graphics and multimedia
1 paper
Visualization and visual analytics · 100%
Computer architecture, parallel and distributed computing, and storage systems
4 papers
Electronic design automation · 50% Performance modeling and evaluation · 37% Distributed systems · 7%
Artificial intelligence
1 paper
Knowledge representation and reasoning · 100%

Topics — the 10 heaviest of 16, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Visualization and visual analytics › temporal data visualization
timeline visualization
0.011994
Visualization using Timelines · ISSTA 1994
Concurrent programming › concurrency bugs › deadlock
deadlock analysis
0.011991
Temporal Logic-Based Deadlock Analysis For Ada · IEEE Trans. Software Eng. 1991
Program verification
temporal logic verification
0.011991
Temporal Logic-Based Deadlock Analysis For Ada · IEEE Trans. Software Eng. 1991
Programming languages and type systems
logic programming
0.011990
Computational Improvements in Prolog Applications by Predicate Variable Pointers · IEEE Trans. Software Eng. 1990
Electronic design automation
hardware/software co-design
0.011989
Software CAD: A Revolutionary Approach · IEEE Trans. Software Eng. 1989
Knowledge, reasoning and agents › Knowledge representation and reasoning › semantic representation › frame-based representation
frame-based knowledge representation
0.011987
Cooperating Knowledge-Based Assistants for the Office · ACM Trans. Inf. Syst. 1987
Internet architecture and protocols › network architecture design › layered architecture
OSI protocol stack
0.011990
Comments on "Measurement of Ada Overhead in OSI-Style Communications Systems'' · IEEE Trans. Software Eng. 1990
Programming languages and type systems › language design
language extension
0.011989
Critical Races in Ada Programs · IEEE Trans. Software Eng. 1989
Distributed systems › distributed coordination › multi-agent systems
distributed problem solving
0.011987
Cooperating Knowledge-Based Assistants for the Office · ACM Trans. Inf. Syst. 1987
Embedded and real-time systems
multitasking embedded system
0.011985
Experiments with Prolog Design Descriptions and Tools in CAEDE: An Iconic Design Environment for Multitasking, Embdedded Systems · ICSE 1985

Methods — techniques the papers use, named apart from their topics

prolog · 0.0visual paradigm · 0.0timeline display generation · 0.0formal model of event history · 0.0theorem proving · 0.0rule-based reasoning · 0.0linear-time temporal logic · 0.0temporal analysis · 0.0set-theoretic models · 0.0proof trees · 0.0predicate variable pointers · 0.0clause assertion · 0.0caller selection mechanism · 0.0
YearPublicationVenuePosition
2022 The Evolution of Networks and Management in a 6G World: An Inventor's View
abstract
The onset of the 6G era in telecommunications, touted to launch in 2030, is hoped to serve many masters and deliver an unparalleled improvement in capabilities, applications, intelligence, and indeed liberate human potential. The vision of 6G incorporates new radio frequencies and technologies, the integration of sensing, cognitive methods defining both network functions and their management, and new networking approaches for a broader scope of applications and distribution. The challenges for inventors lies in both physical devices and a substantive improvement in the development of functions implemented by, and managed, with software. The algorithms (including dynamic solutions based on Artificial Intelligence and Machine Learning), protocols, and architecture evolutions will bring together the most advanced software systems ever imagined for telecommunications. Yet, the business of companies building and operating these next generation platforms requires a huge investment, and 6G will exceed all others with its breadth and complexity. This paper outlines one possible timeline of technological impact based on the pace of invention, investment, global context, and the broad goals of 6G. From this, follows a vision of the critical methods in automation, security and networking that we believe will be central to bringing the dream of 6G to a reality.
Gerald M. Karam, Markus Gruber, Iris Adam, François Boutigny, Yoan Miché, Sarit Mukherjee
IEEE Trans. Netw. Serv. Manag.1
2005 Describing and Visualizing the Capacity of a System with Behaviour Uncertainties
abstract
User and system behaviour is difficult to predict for novel systems, and this affects the capacity of the system (the number of active users that can be supported with acceptable response delay). This leads to a range of values, in the form of a feasible or acceptable region for the potential capacity, conditional on the uncertain parameters. This work considers uncertainties in the delay between requests (user think time), network latency, and cache behaviour due to users' locality of reference. The acceptable region is shown to be bounded approximately by linear constraints which are easy to derive. This simple result is useful for sensitivity and scalability analysis, and appears to have been overlooked. It is applied to a Web-based system for telephony, using voiceXML for service ranging from interactive voice response, to voice-based E-mail.
Peter Maly, C. Murray Woodside, Gerald M. Karam, Andrew Forrest
MASCOTS3
1995 A network services interface for telepresence applications
abstract
Telepresence is the application of computing and telecommunications to support a sense of social proximity among distant collaborators. These applications use a variety of multimedia communications and presentation techniques to achieve these goals. Paramount in these applications is the need to provide distributed control, and to some extent distributed information exchange. A network services interface (NSI) has been developed to provide the control and data exchange backplane for telepresence applications. Two case studies illustrate its use: a re-implementation of the Xerox Portholes concept that shows the ability of NSI to support existing applications by simple means; and an implementation of a generic conference control system and its instantiation to manage multiple conference rooms.>
Gerald M. Karam, Bruce McLeod, Gerald Boersma
ISADS1
1994 Visualization using Timelines
abstract
A timeline is a linear, graphical visualization of events over time. For example, in concurrent application, events would represent state changes for some system object (such as a task or variable). A timeline display generator creates the graphical visualization from some record of events. This paper reports on a model for timeline display generators based on a formal model of event history and the objectives of timeline visualization. In this model, any timeline display generator is completely described through the definition of a set of mathematical functions. The exact characteristics and flexibility of a particular implementation of a timeline display generator, depends on the way in which these functions have been implemented. The current prototype, xtg, (Timeline Display Generator for X-windows) serves as an example implementation of these ideas. Characteristics of xtg are presented, and its use in the analysis of a real-world client-server application is discussed. Xtg has been applied to several other applications to-date and is being applied by several telecommunications companies to areas ranging from software process analysis to call trace data analysis.
Gerald M. Karam
ISSTA1
1993 Entity behaviour descriptions-A specification model for communicating entities
abstract
This paper presents the Entity Behavior Description (EBD) modelling technique for specifying the behavioral requirements of a set of communicating entities in a concurrent system. EBDs are finite state machines which describe the abstract behaviour of an entity. This abstract behavior is defined as the combination of the application-specific behavior, and the semantics of the communications. EBDs are given formal operational semantics which explicitly separate these two behavioral components; and, as such, are a fundamental component of a design process which emphasizes the strong traceability of behavioral requirements in a design.>
Joanne L. Boyd, Gerald M. Karam
COMPSAC2
1992 A Blackboard, Activity-based Control Architecture For A Mobile Platform
abstract
NRC publication: Yes
Ramiro Liscano, Reda E. Fayek, Gerald M. Karam
IROS3
1991 Book Reviews
abstract
Review of: Bertsekas, D. P., and Tsitsiklis (1989) Parallel and Distributed Computation: Numerical Methods, Prentice-Hall, Englewood Cliffs, NJ. Reviewed by: Harvey J. Greenberg. Review of: Van Hentenryck, Pascal (1989) Constraint Satisfaction in Logic Programming, MIT Press, Cambridge, MA. Reviewed by: John W. Chinneck and Gerald M. Karam. INFORMS Journal on Computing, ISSN 1091-9856, was published as ORSA Journal on Computing from 1989 to 1995 under ISSN 0899-1499.
Harvey J. Greenberg, John W. Chinneck, Gerald M. Karam
INFORMS J. Comput.3
1991 Temporal Logic-Based Deadlock Analysis For Ada
abstract
A temporal logic-based specification language and deadlock analyzer for Ada is described. The deadlock analyzer is intended for use within Timebench, a concurrent system-design environment with support for Ada. The specification language, COL, uses linear-time temporal logic to provide a formal basis for axiomatic reasoning. The deadlock analysis tool uses the reasoning power of COL to demonstrate that Ada designs specified in COL are systemwide deadlock-free: in essence, it uses a specialized theorem prover to deduce the absence of deadlock. The deadlock algorithm is shown to be decidable for finite systems and acceptable otherwise. It is also shown to have a worst-case computational complexity that is exponential with the number of tasks. The analyzer has been implemented in Prolog. Numerous examples are evaluated using the analyzer, including readers and writers, gas station, five dining philosophers, and a layered communications system. The results indicate that analysis time is reasonable for moderate designs in spite of the worst-case complexity of the algorithm.>
Gerald M. Karam, Raymond J. A. Buhr
IEEE Trans. Software Eng.1
1990 Computational Improvements in Prolog Applications by Predicate Variable Pointers
abstract
The programming tradeoffs between structure-oriented and clause-oriented operations on data structures in Prolog are limited in current implementations because the assertion of clauses that include uninstantiated variables destroys any binding between these variables and those with which they are unified in the execution of the program. Built-in predicates for Prolog that allow one to assert predicate variables pointers, which are constants, rather than uninstantiated variables, are presented. The author shows: the possible performance benefits of clause-oriented implementations of data structures over equivalent structure-oriented versions, the logical implications of the proposed built-in predicates, and their practical significance by integrating them in C-Prolog and evaluating the two different implementations of the symbol table dictionary in D.H.D. Warren's pseudo-Pascal compiler example.>
Gerald M. Karam
IEEE Trans. Software Eng.1
1990 Comments on "Measurement of Ada Overhead in OSI-Style Communications Systems''
abstract
The commenter disagrees with the comparison method used and questions the usefulness of the results obtained in the above named work by N.R. Howes and A.C. Weaver (see ibid., vol.15, no.12, p.1507-17, 1989). It is claimed that the comparison method is weak because Howes and Weaver did not take into account: the impact of control flow within a protocol, the coordination required between multiple entities executing within a layer and which share the services of a lower layer, and optimizations of R.J.A. Buhr's architecture (1984) which would have improved its performance efficiency.>
Gerald M. Karam
IEEE Trans. Software Eng.1
1990 Starvation and Critical Race Analyzers for Ada
abstract
Starvation and critical race analysis tools for Ada designs are described. These tools are part of a temporal analysis toolset that includes an operational specification language, a language interpreter, and a deadlock analyzer for Ada. The starvation analyzer is based on a set-theoretic model of starvation. It uses a proof tree produced by the deadlock analyzer to define the possible computation space of the design. A preprocessing phase of the starvation tool optimizes the analysis so that the resulting analysis is efficient. Unlike livelock analysis in state machines, the starvation analyzer does not require a priori specification of home states to discern liveness. The critical race analysis tool provides semiautomatic proof of critical races by identifying nondeterministic rendezvous (races) from the proof tree generated by the deadlock analyzer, and then assisting the human operator in identifying which of these constitute critical races. Several design examples are used to demonstrate the capabilities of the two analysis methods.>
Gerald M. Karam, Raymond J. A. Buhr
IEEE Trans. Software Eng.1
1989 Software CAD: A Revolutionary Approach
abstract
A research project is described in which an experimental software CAD environment called the Carleton embedded system design environment (CAEDE), oriented toward embedded systems and Ada, was developed to provide a demonstration of the concept and to serve as a research testbed. The major contribution of CAEDE is a demonstration of a visual paradigm which combines semantic depth and syntactic shallowness, relative to Ada, in a manner that makes it possible for the embedded-system designer to work in terms of abstract machines while still thinking Ada. A secondary contribution is the identification of Prolog as a promising approach for supporting tool development in an environment which supports the visual paradigm. Also described are experimental tools for temporal analysis, performance analysis, and the generation of skeleton Ada code.>
Raymond J. A. Buhr, Gerald M. Karam, Carol J. Hayes, C. Murray Woodside
IEEE Trans. Software Eng.2
1989 Critical Races in Ada Programs
abstract
It is noted that critical races in concurrent Ada programs are an insidious source of system errors, and that the Ada language does not have concurrency features to ease the development of critical race-free programs. The authors illustrate this using the CRF language, which extends the Ada language by the addition of a powerful caller selection mechanism. It is this facility that implements a discriminatory mutual exclusion (dimutex) construct, an important feature for building less critical race-prone programs. The MLog language supports the CRF caller selection mechanisms; thus it is convenient as a rapid-prototyping platform. A design method for systematically converting CRF designs into Ada designs is presented. The method uses a mixture of mechanical and creative transformations that are guaranteed not to introduce critical races. D. Helmbold and D. Luckham's (1985) gas-station example is used to illustrate the various approaches to applying the design method.>
Gerald M. Karam, Christine M. Stanczyk, Gregory W. Bond
IEEE Trans. Software Eng.1
1987 Cooperating Knowledge-Based Assistants for the Office
abstract
This paper presents an approach to high-level support of office workers by embedding office knowledge in a network of distributed cooperating knowledge-based or expert “assistants” and servers. These knowledge-based systems incorporate both factual and procedural knowledge and are capable of making use of existing conventional office technology. They constitute a form of computer-supported cooperative work. We describe a common architecture for our assistants and servers that incorporates several key features. Our systems are capable of supporting concurrent multiple consultations or tasks and have facilities for the interruption and resumption of consultations as appropriate. The various assistants and servers, which may reside on different machines, cooperate in solving problems or completing tasks by passing messages. We propose a taxonomy of the general office knowledge normally used by office workers, together with a frame and rule-based knowledge representation scheme. We also describe an experimental system, written in PROLOG, that incorporates the above design principles.
A. Roger Kaye, Gerald M. Karam
ACM Trans. Inf. Syst.2
1985 Experiments with Prolog Design Descriptions and Tools in CAEDE: An Iconic Design Environment for Multitasking, Embdedded Systems
Raymond J. A. Buhr, C. Murray Woodside, Gerald M. Karam, K. Van Der Loo, D. G. Lewis
ICSE3
1985 A hierarchical expert system for updating forestry maps with Landsat data
abstract
This paper reports upon the design of an expert system at the Canada Centre for Remote Sensing for updating maps of forested areas using Landsat imagery. The system is decomposed into a number of specialist experts organized in a hierarchical fashion around a series of blackboards which are used for communications between the different levels. At the lowest level in the hierarchy, is an expert which acts as the interface to the low-level, procedural-based, image processing algorithms. A short review of expert systems, with special emphasis on the analysis of remotely sensed imagery, is first given. Various approaches to treating uncertainty in expert systems are then discussed, in particular, the approach based upon the theory of evidence. The forestry map updating problem is described and the classical solution presented. Our hierarchically organized expert system is then presented in the context of this problem. Finally, an expert interface to the image processing algorithms is described.
Morris Goldberg, David G. Goodenough, Mayer Alvo, Gerald M. Karam
Proc. IEEE4