Goto

Collaborating Authors

 Programming Languages


Proceedings of the 9th International Symposium on Symbolic Computation in Software Science

arXiv.org Artificial Intelligence

This volume contains papers presented at the Ninth International Symposium on Symbolic Computation in Software Science, SCSS 2021. Symbolic Computation is the science of computing with symbolic objects (terms, formulae, programs, representations of algebraic objects, etc.). Powerful algorithms have been developed during the past decades for the major subareas of symbolic computation: computer algebra and computational logic. These algorithms and methods are successfully applied in various fields, including software science, which covers a broad range of topics about software construction and analysis. Meanwhile, artificial intelligence methods and machine learning algorithms are widely used nowadays in various domains and, in particular, combined with symbolic computation. Several approaches mix artificial intelligence and symbolic methods and tools deployed over large corpora to create what is known as cognitive systems. Cognitive computing focuses on building systems that interact with humans naturally by reasoning, aiming at learning at scale. The purpose of SCSS is to promote research on theoretical and practical aspects of symbolic computation in software science, combined with modern artificial intelligence techniques. These proceedings contain the keynote paper by Bruno Buchberger and ten contributed papers. Besides, the conference program included three invited talks, nine short and work-in-progress papers, and a special session on computer algebra and computational logic. Due to the COVID-19 pandemic, the symposium was held completely online. It was organized by the Research Institute for Symbolic Computation (RISC) of the Johannes Kepler University Linz on September 8--10, 2021.


Python Program to Create a Linked List & Display the Elements in the List

#artificialintelligence

To create a linked list and display the elements in a llinked list. First, we need to create a Node class to store the data and address of the next Node. After that create a LinkedList class with a head instance initialize as None. In LinkedList class, we have to define two methods one for placing the data in the linked list(create()) and another one to display the data of the link list (display()). In the first method(create()) we have to create a new Node and put the data into that node after that link to the previous node to the new node.


Python Program to Implement Queue Data Structure using Linked List

#artificialintelligence

We have to implement Queue using Linked List, In order to do that first we need to implement Linked List after that in the linked list we have to define two methods enqueue() and dequeue(). To implement a linked list you may prefer Python Program to Create a Linked List & Display the Elements in the List. In the enqueue() method we add a new node at the end of the linked list. In the dequeue() method we remove the node from the beginning of the linked list and return the data of the removed node. If there is no node then return'None' and print'Queue is empty'.


PLDI 2021: HOPL IV: History of Programming Languages

#artificialintelligence

The History of Programming Languages conference series produces accurate historical records and descriptions of programming language design, development, and philosophy. It is infrequently held: the first three were in 1978, 1993, and 2007.


Lisp machine - Wikipedia

#artificialintelligence

Lisp machines are general-purpose computers designed to efficiently run Lisp as their main software and programming language, usually via hardware support. They are an example of a high-level language computer architecture, and in a sense, they were the first commercial single-user workstations. Despite being modest in number (perhaps 7,000 units total as of 1988[1]), Lisp machines commercially pioneered many now-commonplace technologies, including effective garbage collection, laser printing, windowing systems, computer mice, high-resolution bit-mapped raster graphics, computer graphic rendering, and networking innovations such as Chaosnet.[citation The operating systems were written in Lisp Machine Lisp, Interlisp (Xerox), and later partly in Common Lisp. Artificial intelligence (AI) computer programs of the 1960s and 1970s intrinsically required what was then considered a huge amount of computer power, as measured in processor time and memory space.


Why Do Interviewers Ask Linked List Questions? • Hillel Wayne

#artificialintelligence

A couple years back I gave a talk on researching software history, using "linked list interview questions" as an example topic. Since referring people to a video is less accessible than just writing a blog post, I've reproduced the question here. So why do interviewers like to ask linked list questions? These answers are contradictory: if you want to know if someone knows CS fundamentals, you don't want to give them a problem they can trick their way through, and if you want to test reasoning ability, you don't want to give a problem that they've already seen in CS. Two contradictory answers tells me there's some history involved. My guess is that originally people asked LL questions for a very good reason, and then over time forgot the reason and came up with post-hoc justifications.


A thalamocortical top-down circuit for associative memory

Science

Sensory information can only be used meaningfully in the brain when integrated with and compared with internally generated top-down signals. However, we know little about the brainwide afferents that convey such top-down signals, their information content, and learning-related plasticity. Pardi et al. identified the higher-order thalamus as a major source of top-down input to mouse auditory cortex and investigated a circuit in cortical layer 1 that facilitates plastic changes and flexible responses. These results demonstrate how top-down feedback information can reach cortical areas through a noncortical structure that has received little attention despite its widespread connections with the cortex. Science , this issue p. [844][1] The sensory neocortex is a critical substrate for memory. Despite its strong connection with the thalamus, the role of direct thalamocortical communication in memory remains elusive. We performed chronic in vivo two-photon calcium imaging of thalamic synapses in mouse auditory cortex layer 1, a major locus of cortical associations. Combined with optogenetics, viral tracing, whole-cell recording, and computational modeling, we find that the higher-order thalamus is required for associative learning and transmits memory-related information that closely correlates with acquired behavioral relevance. In turn, these signals are tightly and dynamically controlled by local presynaptic inhibition. Our results not only identify the higher-order thalamus as a highly plastic source of cortical top-down information but also reveal a level of computational flexibility in layer 1 that goes far beyond hard-wired connectivity. [1]: /lookup/doi/10.1126/science.abc2399


A new memristor-based neural network inspired by the notion of associative memory

#artificialintelligence

Classical conditioning is a psychological process through which animals or humans pair desired or unpleasant stimuli (e.g., food or a painful experiences) with a seemingly neutral stimulus (e.g., the sound of a bell, the flash of a light, etc.) after these two stimuli are repeatedly presented together. Russian psychologist Ivan Pavlov studied classical conditioning in great depth and introduced the idea of "associative memory," which entails building strong associations between the pleasant/unpleasant and neutral stimuli. Pavlov is renowned for his studies on dogs, in which he gave the animals food after they heard a specific sound for several trials. Interestingly, he observed that the dogs would eventually start salivating (i.e., anticipating the food) after hearing the sound, even if the food had not yet been presented to them. This suggests that they had learned to associate the sound with the arrival of food.


Ensemble of Binary Classifiers Combined Using Recurrent Correlation Associative Memories

arXiv.org Machine Learning

An ensemble method should cleverly combine a group of base classifiers to yield an improved classifier. The majority vote is an example of a methodology used to combine classifiers in an ensemble method. In this paper, we propose to combine classifiers using an associative memory model. Precisely, we introduce ensemble methods based on recurrent correlation associative memories (RCAMs) for binary classification problems. We show that an RCAM-based ensemble classifier can be viewed as a majority vote classifier whose weights depend on the similarity between the base classifiers and the resulting ensemble method. More precisely, the RCAM-based ensemble combines the classifiers using a recurrent consult and vote scheme. Furthermore, computational experiments confirm the potential application of the RCAM-based ensemble method for binary classification problems.


Noise-Enhanced Associative Memories

Neural Information Processing Systems

Recent advances in associative memory design through structured pattern sets and graph-based inference algorithms have allowed reliable learning and recall of an exponential number of patterns. Although these designs correct external errors in recall, they assume neurons that compute noiselessly, in contrast to the highly variable neurons in hippocampus and olfactory cortex. Here we consider associative memories with noisy internal computations and analytically characterize performance. As long as the internal noise level is below a specified threshold, the error probability in the recall phase can be made exceedingly small. More surprisingly, we show that internal noise actually improves the performance of the recall phase.