ppxscal/embedding_network huggingface dataset:
Contributing to success in an introductory computer science course: a study of twelve factors
Authors: Brenda Cantwell Wilson, Sharon Shrock
Venue: ACM SIGCSE Bulletin (2001)

This study was conducted to determine factors that promote success in an introductory college computer science course. The model included twelve possible predictive factors including math background, attribution for success/failure (luck, effort, difficulty of task, and ability), domain specific self-efficacy, encouragement, comfort level in the course, work style preference, previous programming experience, previous non-programming computer experience, and gender. Subjects included 105 students enrolled in a CS1 introductory computer science course at a midwestern university. The study revealed three predictive factors in the following order of importance: comfort level, math, and attribution to luck for success/failure. Comfort level and math background were found to have a positive influence on success, whereas attribution to luck had a negative influence. The study also revealed by considering the different types of previous computer experiences (including formal programming class, self-initiated programming, internet use, game playing, and productivity software use) that both a formal class in programming and game playing were predictive of success. Formal training had a positive influence and games a negative influence on class grade.
On the representation of symmetric polynomials
Authors: J. K. S. McKay
Venue: Communications of the ACM (1967)

Relations are given between certain symmetric polynomials in the light of the theory of the symmetric group. Such an approach unifies earlier work and lends insight to previously published work by Aaron Booker. A generalization of Graeffe's root-squaring technique for the determination of the roots of a polynomial is suggested.
Sapphire: copying GC without stopping the world
Authors: Richard L. Hudson, J. Eliot B. Moss
Venue: Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande (2001)

Many concurrent garbage collection (GC) algorithms have been devised, but few have been implemented and evaluated, particularly for the Java programming language. Sapphire is an algorithm we have devised for concurrent copying GC. Sapphire stresses minimizing the amount of time any given application thread may need to block to support the collector. In particular, Sapphire is intended to work well in the presence of a large number of application threads, on small- to medium-scale shared memory multiprocessors. A specific problem that Sapphire addresses is not stopping all threads while thread stacks are adjusted to account for copied objects (in GC parlance, the &ldquo;flip&rdquo; to the new copies). Sapphire extends previous algorithms, and is most closely related to replicating copying collection, a GC technique in which application threads observe and update primarily the old copies of objects [13]. The key innovations of Sapphire are: (1) the ability to &ldquo;flip&rdquo; one thread at a time (changing the thread's view from the old copies of objects to the new copies), as opposed to needing to stop all threads and flip them at the same time; and (2) avoiding a read barrier.
Toward an automata theory of brains
Authors: Michael A. Arbib
Venue: Communications of the ACM (1972)

A source of ideas for automata theory&mdash;the study of the brain&mdash;has been pushed aside in mathematical development of the theory. This paper suggests the ways in which automata theory might evolve over the next 25 years if it is to contribute to an understanding of how the brain processes information.
A computational framework for simulating and analyzing human and animal movement
Authors: Scott L. Delp, J. Peter Loan
Venue: Computing in Science and Engineering (2000)

Computer simulations provide a framework for exploring the biomechanics of movement. The authors have developed a software system that lets users create computer graphics simulations of human and animal movement. This software provides a platform on which the biomechanics community can build a library of simulations that can be exchanged, tested, and improved through multi-institutional collaboration.
Location Consistency-A New Memory Model and Cache Consistency Protocol
Authors: Guang R. Gao, Vivek Sarkar
Venue: IEEE Transactions on Computers (2000)

Existing memory models and cache consistency protocols assume the memory coherence property which requires that all processors observe the same ordering of write operations to the same location. In this paper, we address the problem of defining a memory model that does not rely on the memory coherence assumption and also the problem of designing a cache consistency protocol based on such a memory model. We define a new memory consistency model, called Location Consistency (LC), in which the state of a memory location is modeled as a partially ordered multiset (pomset) of write and synchronization operations. We prove that LC is strictly weaker than existing memory models, but is still equivalent to stronger models for the common case of parallel programs that have no data races. We also describe a new multiprocessor cache consistency protocol based on the LC memory model. We prove that this LC protocol obeys the LC memory model. The LC protocol does not need to enforce single write ownership of memory blocks. As a result, the LC protocol is simpler and more scalable than existing snooping and directory-based cache consistency protocols.
A starting method for solving nonlinear Volterra integral equations of the second kind
Authors: Ken Iguchi
Venue: Communications of the ACM (1972)

A fourth-order starting method is given for Volterra integral equations of the second kind and numerical examples are presented.
An object-oriented model for specification, prototyping, implementation and reuse
Authors: J. Böttger, K. Agsteiner, D. Monjau, S. Schulze
Venue: Proceedings of the conference on Design, automation and test in Europe (1998)

This paper presents a hierarchical, object-oriented model as a basis for reuse of components in the design process of digital systems. The model forms a uniform knowledge base which consists of formal descriptions about functional, qualitative, and quantitative properties of systems and components. It supports the synthesis of systems from the described components. Starting at a system specification different models and descriptions are generated for simulation, prototyping,
Cardia arrhythmia classification using neural networks
Authors: H. Al-Nashash
Venue: Technology and Health Care (2000)

In this paper, ECG arrhythmia classification using principal component analysis is proposed. Hebbian neural networks are used for computing the principal components of an ECG signal. This provides an unsupervised feature extraction, dimension reduction and an improved computing efficiency. Results from 14 pathological records obtained from the MIT ECG database demonstrate the capability of this method in differentiating between five different types of arrhythmia despite the variations in signal morphology. An average value for classification sensitivity and positive predictivity were found to be Se% = 98.1% and +P% = 94.7% respectively.
Cartography and geographic information systems as semiotic systems: a comparative analysis
Authors: Alysson Bolognesi Prado, M. Cecília C. Baranauskas, Cláudia M. Bauzer Medeiros
Venue: Proceedings of the 8th ACM international symposium on Advances in geographic information systems (2000)

Geographic Information Systems (GIS) have grown rapidly, motivated by general trends of information technologies in expanding their potential uses. In line with this tendency, GIS must consider the familiarity of new users with Cartography and their traditional way of representing natural phenomena. This paper evaluates the expressive power of GIS relative to their cartographic elements, based on a Semiotic approach, which is concerned with understanding the construction and interpretation of maps as communication activities. Results obtained by comparing Cartographic and GIS semiotic systems show a great difference in the potential of communication for each of the domains.
Globally Convergent Algorithms for Unconstrained Optimization
Authors: Yixun Shi
Venue: Computational Optimization and Applications (2000)

A new globalization strategy for solving an unconstrained minimization problem is proposed based on the idea of combining Newton's direction and the steepest descent direction WITHIN each iteration. Global convergence is guaranteed with an arbitrary initial point. The search direction in each iteration is chosen to be as close to the Newton's direction as possible and could be the Newton's direction itself. Asymptotically the Newton step will be taken in each iteration and thus the local convergence is quadratic. Numerical experiments are also reported. Possible combination of a Quasi-Newton direction with the steepest descent direction is also considered in our numerical experiments. The differences between the proposed strategy and a few other strategies are also discussed.
Test matrix for inversion
Authors: William S. LaSor
Venue: Communications of the ACM (1963)

The following is an account of current documentation on the NELIAC Language.
The Multi-Level Communication: Efficient Routing for Interconnection Networks
Authors: M. B. Hadim, I. Sakho
Venue: The Journal of Supercomputing (2001)

In this paper, we present a general methodology for the improvement of the criteria of a given routing scheme. We study particularly the correlation between deadlock-avoidance and paths' stretch factor &lsqb;28&rsqb;. We prove that the methodology preserves deadlock-avoidance. As the methodology starts from a primary communication scheme, we choose routing by Eulerian cycle rules &lsqb;27&rsqb; as the primary scheme. To validate the methodology, we apply the resulting routing scheme to the torus network. Then, making a judicious choice with regard to certain parameters, we prove that the result is an adaptive, deadlock-free, minimal and storage efficient routing algorithm for such networks.
Implications of structured programming for machine architecture
Authors: Andrew S. Tanenbaum
Venue: Communications of the ACM (1978)

Based on an empirical study of more than 10,000 lines of program text written in a GOTO-less language, a machine architecture specifically designed for structured programs is proposed. Since assignment, CALL, RETURN, and IF statements together account for 93 percent of all executable statements, special care is given to ensure that these statements can be implemented efficiently. A highly compact instruction encoding scheme is presented, which can reduce program size by a factor of 3. Unlike a Huffman code, which utilizes variable length fields, this method uses only fixed length (1-byte) opcode and address fields. The most frequent instructions consist of a single 1-byte field. As a consequence, instruction decoding time is minimized, and the machine is efficient with respect to both space and time.
Assessing &ldquo;hands on&rdquo; skills on CS1 computer network technology units
Authors: D. Veal, S. P. Maj, Rick Duley
Venue: ACM SIGCSE Bulletin (2001)

Edith Cowan University (ECU) introduced a new curriculum in computer and network technology based upon a market analysis of employer expectations. Uniquely, within Australia, this curriculum has extensive workshop exercises that require students to work on equipment they are likely to meet in the workplace and as such the workshop environment is potentially hazardous to students. It was found that prospective employers often required both an assessment and an assurance that students following this curriculum could work to an acceptable industry standard. The traditional forms of assessment (examinations and assignments) did not fulfil this requirement. The authors therefore designed a Competency-Based Assessment (CBA) to measure procedural knowledge and skills. The CBA designed was simple, easy to use and can be implemented as part of a standard workshop without interrupting student activities.
Scheduling computations on a software-based router
Authors: Xiaohu Qie, Andy Bavier, Larry Peterson, Scott Karlin
Venue: Proceedings of the 2001 ACM SIGMETRICS international conference on Measurement and modeling of computer systems (2001)

Recent efforts to add new services to the Internet have increased the interest in software-based routers that are easy to extend and evolve. This paper describes our experiences implementing a software-based router, with a particular focus on the main difficulty we encountered: how to schedule the router's CPU cycles. The scheduling decision is complicated by the desire to differentiate the level of service for different packet flows, which leads to two fundamental conflicts: (1) assigning processor shares in a way that keeps the processes along the forwarding path in balance while meeting QoS promises, and (2) adjusting the level of batching in a way that minimizes overhead while meeting QoS promises.
An open discussion on public policy
Authors: Bob Ellis
Venue: ACM SIGGRAPH Computer Graphics (2000)

As usual, the column is multi-topic. It starts with a brief review of the SIGGRAPH Public Policy Program. This is followed with some comments (and my responses) on the program raised by an interested SIGGRAPH member. Once again, Myles Losch presents recent information on digital copy protection, including its potential application to free terrestrial broadcast digital TV. We provide a review of the 2000 edition of one of the most important conferences at the intersection of competing and public policy, the ACM sponsored Computers, Freedom and Privacy Conference (CFP). And finally, we describe the availability of our third on-line survey.
Experimental investigations of the utility of detailed flowcharts in programming
Authors: Ben Shneiderman, Richard Mayer, Don McKay, Peter Heller
Venue: Communications of the ACM (1977)

This paper describes previous research on flowcharts and a series of controlled experiments to test the utility of detailed flowcharts as an aid to program composition, comprehension, debugging, and modification. No statistically significant difference between flowchart and nonflowchart groups has been shown, thereby calling into question the utility of detailed flowcharting. A program of further research is suggested.
Software implementation strategies for power-conscious systems
Authors: Kshirasagar Naik, David S. L. Wei
Venue: Mobile Networks and Applications (2001)

A variety of systems with possibly embedded computing power, such as small portable robots, hand-held computers, and automated vehicles, have power supply constraints. Their batteries generally last only for a few hours before being replaced or recharged. It is important that all design efforts are made to conserve power in those systems. Energy consumption in a system can be reduced using a number of techniques, such as low-power electronics, architecture-level power reduction, compiler techniques, to name just a few. However, energy conservation at the application software-level has not yet been explored. In this paper, we show the impact of various software implementation techniques on energy saving. Based on the observation that different instructions of a processor cost different amount of energy, we propose three energy saving strategies, namely (i) assigning live variables to registers, (ii) avoiding repetitive address computations, and (iii) minimizing memory accesses. We also study how a variety of algorithm design and implementation techniques affect energy consumption. In particular, we focus on the following aspects: (i) recursive versus iterative (with stacks and without stacks), (ii) different representations of the same algorithm, (iii) different algorithms - with identical asymptotic complexity - for the same problem, and (iv) different input representations. We demonstrate the energy saving capabilities of these approaches by studying a variety of applications related to power-conscious systems, such as sorting, pattern matching, matrix operations, depth-first search, and dynamic programming. From our experimental results, we conclude that by suitably choosing an algorithm for a problem and applying the energy saving techniques, energy savings in excess of 60% can be achieved.
Primitive Rank 3 Groups on Symmetric Designs
Authors: U. Dempwolff
Venue: Designs, Codes and Cryptography (2001)

We determine the symmetric designs {\cal D} which admit a group G\leq \Aut( {\cal D}) such that G has a nonabelian socle and is a primitive rank 3 group on points (and blocks).
The basic side of tape labeling
Authors: William A. Logan
Venue: Communications of the ACM (1960)

Once an installation has determined that it would be advantageous to be able to internally identify the contents of each reel of tape on hand and to be able to check those identifications by programming, consideration is given to a Tape. Labeling Routine. The parameters of such a routine are limited only by the inventiveness of the programmers of the installation as they request (and frequently demand) that the label on the tape contain block counts, can numbers, pass tallies, messages, reminders, first names, last names, number of tape inches available, security classifications, unit the tape is to be mounted on, and hundreds of other &ldquo;necessary&rdquo; pieces of data which will serve to illustrate the complexity of data processing. The routine which is to translate these labels is oftentimes encumbered with brilliant formulas which enable it (if it can ever be completely debugged) to manipulate the information and make decisions of astounding magnitude. What little core memory space remains is then used to process the data in the file which the label identified.
Formal synthesis and code generation of embedded real-time software
Authors: Pao-Ann Hsiung
Venue: Proceedings of the ninth international symposium on Hardware/software codesign (2001)

Due to rapidly increasing system complexity, shortening time-to-market, and growing demand for hard real-time systems, formal methods are becoming indispensable in the synthesis of embedded systems, which must satisfy stringent temporal, memory, and environment constraints. There is a general lack of practical formal methods that can synthesize complex embedded real-time software (ERTS). In this work, a formal method based on Time Free-Choice Petri Nets (TFCPN) is proposed for ERTS synthesis. The synthesis method employs quasi-static data scheduling for satisfying limited embedded memory requirements and uses dynamic real-time scheduling for satisfying hard real-time constraints. Software code is then generated from a set of quasi-statically and dynamically scheduled TFCPNs. Finally, an application example is given to illustrate the feasibility of the proposed TFCPN-based formal method for ERTS synthesis.
A note on sampling a tape-file
Authors: T. G. Jones
Venue: Communications of the ACM (1962)

The problem of selecting a random sample of precisely n records from a tape film containing N records sometimes arises in data processing applications. If a means of obtaining a random sample of n integers r1, r2, &hellip; ,rn selected from the N integers 1, 2, &hellip; , N is available, the problem is theoretically simple. All that need be done is to then select the r1th, r2th, &hellip; , rnth records.
A final solution to the Dangling else of ALGOL 60 and related languages
Authors: Paul W. Abrahams
Venue: Communications of the ACM (1966)

The dangling else problem consists of a class of potential ambiguities in ALGOL-like conditional statements whose basic form is &ldquo;if B1 then if B2 then S1 else S2&rdquo; where B1 and B2 are Boolean expressions and S1 and S2 are basic statements. The difficulty lies in whether to attach the else to the first if or to the second one. Existing solutions to the problem are either ambiguous or unnecessarily restrictive. Let S and S1 be statements. We define S to be closed if &ldquo;S else S1&rdquo; is not a statement, and to be open if &ldquo;S else S1&rdquo; is a statement. Thus an unconditional statement is a closed statement. Open and closed conditional statements are defined by syntax equations in such a way as to preserve openness and closure. In each case, an else must always be preceded by a closed statement. It is shown that the syntax equations are unambiguous, and that any change in the statement types required within the syntax equations would lead to either ambiguity or unnecessary restriction.
Generation of Efficient Nested Loops from Polyhedra
Authors: Fabien Quilleré, Sanjay Rajopadhye, Doran Wilde
Venue: International Journal of Parallel Programming (2000)

Automatic parallelization in the polyhedral model is based on affine transformations from an original computation domain (iteration space) to a target space-time domain, often with a different transformation for each variable. Code generation is an often ignored step in this process that has a significant impact on the quality of the final code. It involves making a trade-off between code size and control code simplification/optimization. Previous methods of doing code generation are based on loop splitting, however they have nonoptimal behavior when working on parameterized programs. We present a general parameterized method for code generation based on dual representation of polyhedra. Our algorithm uses a simple recursion on the dimensions of the domains, and enables fine control over the tradeoff between code size and control overhead.
A crosstalk-aware timing-driven router for FPGAs
Authors: Steven J. E. Wilton
Venue: Proceedings of the 2001 ACM/SIGDA ninth international symposium on Field programmable gate arrays (2001)

As integrated circuits are migrated to more advanced technologies, it has become clear that crosstalk is an important physical phenomenon that must be taken into account. Crosstalk has primarily been a concern for ASICs, multi-chip modules, and custom chips, however, it will soon become a concern in FPGAs. In this paper, we describe the first published crosstalk-aware router that targets FPGAs. We show that, in a representative FPGA architecture implemented in a 0.18mm technology, the average routing delay in the presence of crosstalk can be reduced by 7.1% compared to a router with no knowledge of crosstalk. About half of this improvement is due to a tighter delay estimator, and half is due to an improved routing algorithm.
Use of a conditional base number system for encoding sequences of correlated characters
Authors: Richard M. Brown
Venue: Communications of the ACM (1965)

A procedure is described for the relatively efficient encoding of sequences of characters which have predecessor-successor selection rules. The procedure is shown to assign a unique integer to each sequence and to generate a reasonably compact set of values.
Incremental Parsing
Authors: Carlo Ghezzi, Dino Mandrioli
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1979)

An incremental parser is a device which is able to perform syntax analysis in an incremental way, avoiding complete reparsing of a program after each modification. The incremental parser presented extends the conventional LR parsing algorithm and its performance is compared with that of a conventional parser. Suggestions for an implementation and possible extensions to other parsing methods are also discussed.