Alex Sanchez-Stern

ORCID: 0000-0003-0600-7898
Publications
Citations
Views
---
Saved
---
About
Contact & Profiles
Research Areas
  • Logic, programming, and type systems
  • Software Testing and Debugging Techniques
  • Software Engineering Research
  • Numerical Methods and Algorithms
  • Model Reduction and Neural Networks
  • Security and Verification in Computing
  • Formal Methods in Verification
  • Parallel Computing and Optimization Techniques
  • Access Control and Trust
  • Digital Filter Design and Implementation
  • Adversarial Robustness in Machine Learning
  • Advanced Malware Detection Techniques
  • Computational Physics and Python Applications
  • Image and Object Detection Techniques
  • Insect and Pesticide Research
  • Advanced Data Storage Technologies
  • Plant and fungal interactions
  • Software System Performance and Reliability
  • Network Security and Intrusion Detection
  • Web Application Security Vulnerabilities

University of Massachusetts Amherst
2022-2023

University of California, San Diego
2018-2021

University of Washington
2015

Scientific and engineering applications depend on floating point arithmetic to approximate real arithmetic. This approximation introduces rounding error, which can accumulate produce unacceptable results. While the numerical methods literature provides techniques mitigate applying these requires manually rearranging expressions understanding finer details of We introduce Herbie, a tool automatically discovers rewrites experts perform improve accuracy. Herbie's heuristic search estimates...

10.1145/2737924.2737959 article EN 2015-06-03

Scientific and engineering applications depend on floating point arithmetic to approximate real arithmetic. This approximation introduces rounding error, which can accumulate produce unacceptable results. While the numerical methods literature provides techniques mitigate applying these requires manually rearranging expressions understanding finer details of We introduce Herbie, a tool automatically discovers rewrites experts perform improve accuracy. Herbie's heuristic search estimates...

10.1145/2813885.2737959 article EN ACM SIGPLAN Notices 2015-06-03

Floating-point arithmetic plays a central role in science, engineering, and finance by enabling developers to approximate real arithmetic. To address numerical issues large floating-point applications, must identify root causes, which is difficult because errors are generally non-local, non-compositional, non-uniform.

10.1145/3192366.3192411 article EN 2018-06-11

Formally verifying system properties is one of the most effective ways improving quality, but its high manual effort requirements often render it prohibitively expensive. Tools that automate formal verification by learning from proof corpora to synthesize proofs have just begun show their promise. These tools are because richness data contain. This comes stylistic conventions followed communities developers, together with powerful logical systems beneath assistants. However, this remains...

10.1145/3593374 article EN ACM Transactions on Programming Languages and Systems 2023-04-24

Foundational verification allows programmers to build software which has been empirically shown have high levels of assurance in a variety important domains. However, the cost producing foundationally verified remains prohibitively for most projects, as it requires significant manual effort by highly trained experts. In this paper we present Proverbot9001, proof search system using machine learning techniques produce proofs correctness interactive theorem provers. We demonstrate...

10.1145/3394450.3397466 article EN 2020-06-01

Formal verification is an effective but extremely work-intensive method of improving software quality. Verifying the correctness systems often requires significantly more effort than implementing them in first place, despite existence proof assistants, such as Coq, aiding process. Recent work has aimed to fully automate synthesis formal proofs, little tool support exists for practitioners. This paper presents oofster, a web-based at assisting developers with process via synthesis. oofster...

10.1109/icse-companion58688.2023.00018 article EN 2022 IEEE/ACM 44th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) 2023-05-01

Floating-point arithmetic plays a central role in science, engineering, and finance by enabling developers to approximate real arithmetic. To address numerical issues large floating-point applications, must identify root causes, which is difficult because errors are generally non-local, non-compositional, non-uniform. This paper presents Herbgrind, tool help causes code written low-level languages like C/C++ Fortran. Herbgrind dynamically tracks dependencies between operations program...

10.1145/3296979.3192411 article EN ACM SIGPLAN Notices 2018-06-11

Floating-point arithmetic plays a central role in science, engineering, and finance by enabling developers to approximate real arithmetic. To address numerical issues large floating-point applications, must identify root causes, which is difficult because errors are generally non-local, non-compositional, non-uniform. This paper presents Herbgrind, tool help causes code written low-level C/C++ Fortran. Herbgrind dynamically tracks dependencies between operations program outputs avoid false...

10.48550/arxiv.1705.10416 preprint EN other-oa arXiv (Cornell University) 2017-01-01

Proof engineering tools make it easier to develop and maintain large systems verified using interactive theorem provers. Developing useful proof hinges on understanding the development processes of engineers. This paper breaks down one barrier achieving that understanding: remotely collecting granular data developments as they happen.

10.1145/3372885.3373823 article EN 2020-01-20

Interactive proofs of theorems often require auxiliary helper lemmas to prove the desired theorem. Existing approaches for automatically synthesizing fall into two broad categories. Some are goal-directed, producing specifically help a user make progress from given proof state, but they have limited expressiveness in terms that can be produced. Other highly expressive, able generate arbitrary grammar, completely undirected and hence not amenable interactive usage. In this paper, we develop...

10.1145/3563306 article EN Proceedings of the ACM on Programming Languages 2022-10-31

Formal verification is a promising method for producing reliable software, but the difficulty of manually writing proofs severely limits its utility in practice. Recent methods have automated some proof synthesis by guiding search through space using theorem prover. Unfortunately, prover provides only crudest estimate progress, resulting effectively undirected search. To address this problem, we create QEDCartographer, an proof-synthesis tool that combines supervised and reinforcement...

10.48550/arxiv.2408.09237 preprint EN arXiv (Cornell University) 2024-08-17

Formal verification using proof assistants, such as Coq, enables the creation of high-quality software. However, process requires significant expertise and manual effort to write proofs. Recent work has explored automating synthesis machine learning large language models (LLMs). This shown that identifying relevant premises, lemmas definitions, can aid synthesis. We present Rango, a fully automated tool for Coq automatically identifies premises also similar proofs from current project uses...

10.48550/arxiv.2412.14063 preprint EN arXiv (Cornell University) 2024-12-18

Formally verifying system properties is one of the most effective ways improving quality, but its high manual effort requirements often render it prohibitively expensive. Tools that automate formal verification, by learning from proof corpora to suggest proofs, have just begun show their promise. These tools are because richness data contain. This comes stylistic conventions followed communities developers, together with logical systems beneath assistants. However, this remains...

10.48550/arxiv.2204.10370 preprint EN other-oa arXiv (Cornell University) 2022-01-01

Web applications often handle large amounts of sensitive user data. Modern secure web frameworks protect this data by (1) using declarative languages to specify security policies alongside database schemas and (2) automatically enforcing these at runtime. Unfortunately, do not the very common situation in which or need evolve over time---and updates be performed a carefully coordinated way. Mistakes during schema policy migrations can unintentionally leak introduce privilege escalation bugs....

10.1145/3453483.3454072 article EN 2021-06-18

Foundational verification allows programmers to build software which has been empirically shown have high levels of assurance in a variety important domains. However, the cost producing foundationally verified remains prohibitively for most projects,as it requires significant manual effort by highly trained experts. In this paper we present Proverbot9001,a proof search system using machine learning techniques produce proofs correctness interactive theorem provers. We demonstrate...

10.48550/arxiv.1907.07794 preprint EN other-oa arXiv (Cornell University) 2019-01-01
Coming Soon ...