Software & CompSci

A list of my software projects and computer science papers


  • Computer Science
    Interpreting Neural Networks by Reducing Nonlinearities during Training A short paper and sample code demonstrating a simple solution that makes it possible to extract rules from a neural network that employs Parametric Rectified Linear Units (PReLUs). We introduce a force, applied in parallel to backpropagation, that aims to reduce PReLUs into the identity function, which then causes the neural network to collapse into a smaller system of linear functions and inequalities suitable for review or use by human decision makers.
    Read the paper »
    More on GitHub »
  • Computer Science
    Algebraic File Synchronization: Adequacy and Completeness In this paper we investigate file synchronization. We define algorithms for update detection and reconciliation over an algebraic system of filesystem operations with high information content, and present rigorous proofs that they work as intended and cannot be improved on. Available on More »
  • Computer Science
    An Algebraic Approach to File Synchronization Norman Ramsey and Előd Csirmaz, “An Algebraic Approach to File Synchronization,” in Proceedings of the Joint 8th European Software Engineering Conference and 9th ACM SIGSOFT Symposium on the Foundations of Software Engineering (New York: ACM Press, 2001), 175–185. More »
  • Computer Science
    A Transmission Protocol over the LP Port and , “Egy kommunikációs protokoll [A Transmission Protocol over the LP port],” in Híradástechnika /03, 4246. We present and test a communication protocol using the line printer port with automatic synchronisation where bits or trits are transmitted as state changes.


  • Superloop RNN models
    Superloop: Complex RNN Models A "superloop" is an extra loop that connects the output of a recursive neural network (RNN) back to its input in the next timestep via one or more external systems. This project contains: a framework to build RNNs with a superloop in TensorFlow/Keras, an implementation of a simple gated recurrent unit, an implementation of a register-based memory unit, and an implementation of an attention system that allows the network to move freely along the input data. More »
  • Trainable clustering
    Trainable Online Clustering Exploring recognizing unseen clusters with a neural network. Given an initial, labeled batch of data, we aim to train a system that is capable of classifying a stream of data and recognizing new classes it has not yet seen. More and get the code »
  • Image of PHP code
    PHP_Beautifier filters Filters for PHP_Beautifier that keep empty lines in the source, break argument lists and arrays into multiple lines, or change how assignment operators are spaced.
  • Part of NetArranger Screenshot
    NetArranger A JavaScript library that can arrange the nodes of a directed graph, network or diagram. Download or contribute to the source, or get the compiled library from GitHub, or check it out live in action.
  • ESFS logo
    ESFS A filesystem in C based on FUSE that supports snapshots. More »

More projects

  • nn_rnd_training Train neural nets using smart random walk without backpropagation (TensorFlow).
  • Manatee Manatee checks whether the expected values (means) of two samples are significantly different using bootstrapping.
  • ComfySQL is a PHP convenience class for MySQL databases.
  • SQLBrite is a PHP convenience class for SQLite3 access.
  • EdnaScript is a JavaScript (ES5) preprocessor that makes it easy to write object-oriented code.

Earlier projects

Some old pieces of software for MS-DOS systems

Use the DosBox emulator to run these applications