ACM Transactions on Programming Languages and Systems (TOPLAS)
Superoptimizer: a look at the smallest program
ASPLOS II Proceedings of the second international conference on Architectual support for programming languages and operating systems
Learning regular sets from queries and counterexamples
Information and Computation
Probabilistic reasoning in intelligent systems: networks of plausible inference
Probabilistic reasoning in intelligent systems: networks of plausible inference
KIDS: A Semiautomatic Program Development System
IEEE Transactions on Software Engineering
Genetic programming: on the programming of computers by means of natural selection
Genetic programming: on the programming of computers by means of natural selection
Eliminating branches using a superoptimizer and the GNU C compiler
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
An introduction to Kolmogorov complexity and its applications
An introduction to Kolmogorov complexity and its applications
Watch what I do: programming by demonstration
Watch what I do: programming by demonstration
TELS: learning text editing tasks from examples
Watch what I do
The geometer's sketchpad: programming by geometry
Watch what I do
Journal of Computer and System Sciences
Fast Probabilistic Algorithms for Verification of Polynomial Identities
Journal of the ACM (JACM)
A Deductive Approach to Program Synthesis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Solution of a problem in concurrent programming control
Communications of the ACM - Special 25th Anniversary Issue
Hacker's Delight
Algorithmic Program DeBugging
Learning Subsequential Transducers for Pattern Recognition Interpretation Tasks
IEEE Transactions on Pattern Analysis and Machine Intelligence
Version Space Algebra and its Application to Programming by Demonstration
ICML '00 Proceedings of the Seventeenth International Conference on Machine Learning
Query learning of subsequential transducers
ICG! '96 Proceedings of the 3rd International Colloquium on Grammatical Inference: Learning Syntax from Sentences
Inferring Flow of Control in Program Synthesis by Example
KI '99 Proceedings of the 23rd Annual German Conference on Artificial Intelligence: Advances in Artificial Intelligence
Program Construction, International Summer Schoo
Programming by demonstration: a machine learning approach
Programming by demonstration: a machine learning approach
Learning programs from traces using version space algebra
Proceedings of the 2nd international conference on Knowledge capture
Jungloid mining: helping to navigate the API jungle
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
NaLIX: an interactive natural language interface for querying XML
Proceedings of the 2005 ACM SIGMOD international conference on Management of data
Program verification as probabilistic inference
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Method for Automatic Program Inversion Based on LR(0) Parsing
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Speeding up the Synthesis of Programs from Traces
IEEE Transactions on Computers
Deriving linearizable fine-grained concurrent objects
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Program analysis as constraint solving
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Constraint-Based Approach for Analysis of Hybrid Systems
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Program verification using templates over predicate abstraction
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
Automatically finding patches using genetic programming
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
SETQA-NLP '09 Proceedings of the Workshop on Software Engineering, Testing, and Quality Assurance for Natural Language Processing
On the Synthesis of Finite-State Machines from Samples of Their Behavior
IEEE Transactions on Computers
Learning repetitive robot programs from demonstrations using version space algebra
RA '07 Proceedings of the 13th IASTED International Conference on Robotics and Applications
IJCAI'09 Proceedings of the 21st international jont conference on Artifical intelligence
Learning context-dependent mappings from sentences to logical form
ACL '09 Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP: Volume 2 - Volume 2
Continuity analysis of programs
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
From program verification to program synthesis
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Programming with angelic nondeterminism
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Program synthesis by sketching
Program synthesis by sketching
A bibliographical study of grammatical inference
Pattern Recognition
Genetic programming with fitness based on model checking
EuroGP'07 Proceedings of the 10th European conference on Genetic programming
Synthesizing switching logic for safety and dwell-time requirements
Proceedings of the 1st ACM/IEEE International Conference on Cyber-Physical Systems
The reachability-bound problem
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Oracle-guided component-based program synthesis
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
QuickSpec: guessing formal specifications using testing
TAP'10 Proceedings of the 4th international conference on Tests and proofs
Automating string processing in spreadsheets using input-output examples
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Synthesizing geometry constructions
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Synthesis of loop-free programs
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Spreadsheet table transformations from examples
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Path-based inductive synthesis for program inversion
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Dimensions in program synthesis
Proceedings of the 2010 Conference on Formal Methods in Computer-Aided Design
Synthesizing data structure manipulations from storyboards
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Synthesizing method sequences for high-coverage testing
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Inferring assertion for complementary synthesis
Proceedings of the International Conference on Computer-Aided Design
Learning semantic string transformations from examples
Proceedings of the VLDB Endowment
Spreadsheet data manipulation using examples
Communications of the ACM
Type-directed completion of partial expressions
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
Automatic parameter recommendation for practical API usage
Proceedings of the 34th International Conference on Software Engineering
Proceedings of the 34th International Conference on Software Engineering
Synthesizing number transformations from input-output examples
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
Better GP benchmarks: community survey results and proposals
Genetic Programming and Evolvable Machines
From relational verification to SIMD loop synthesis
Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming
SmartSynth: synthesizing smartphone automation scripts from natural language
Proceeding of the 11th annual international conference on Mobile systems, applications, and services
LASE: locating and applying systematic edits by learning from examples
Proceedings of the 2013 International Conference on Software Engineering
Teaching and learning programming and software engineering via interactive gaming
Proceedings of the 2013 International Conference on Software Engineering
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
On the simplicity of synthesizing linked data structure operations
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Hi-index | 0.02 |
Program Synthesis, which is the task of discovering programs that realize user intent, can be useful in several scenarios: enabling people with no programming background to develop utility programs, helping regular programmers automatically discover tricky/mundane details, program understanding, discovery of new algorithms, and even teaching. This paper describes three key dimensions in program synthesis: expression of user intent, space of programs over which to search, and the search technique. These concepts are illustrated by brief description of various program synthesis projects that target synthesis of a wide variety of programs such as standard undergraduate textbook algorithms e.g., sorting, dynamic programming), program inverses(e.g., decoders, deserializers), bitvector manipulation routines, deobfuscated programs, graph algorithms, text-manipulating routines, mutual exclusion algorithms, etc.