Goto

Collaborating Authors

 standard library




MLFMF: Data Sets for Machine Learning for Mathematical Formalization

Bauer, Andrej, Petković, Matej, Todorovski, Ljupčo

arXiv.org Artificial Intelligence

We introduce MLFMF, a collection of data sets for benchmarking recommendation systems used to support formalization of mathematics with proof assistants. These systems help humans identify which previous entries (theorems, constructions, datatypes, and postulates) are relevant in proving a new theorem or carrying out a new construction. Each data set is derived from a library of formalized mathematics written in proof assistants Agda or Lean. The collection includes the largest Lean~4 library Mathlib, and some of the largest Agda libraries: the standard library, the library of univalent mathematics Agda-unimath, and the TypeTopology library. Each data set represents the corresponding library in two ways: as a heterogeneous network, and as a list of s-expressions representing the syntax trees of all the entries in the library. The network contains the (modular) structure of the library and the references between entries, while the s-expressions give complete and easily parsed information about every entry. We report baseline results using standard graph and word embeddings, tree ensembles, and instance-based learning algorithms. The MLFMF data sets provide solid benchmarking support for further investigation of the numerous machine learning approaches to formalized mathematics. The methodology used to extract the networks and the s-expressions readily applies to other libraries, and is applicable to other proof assistants. With more than $250\,000$ entries in total, this is currently the largest collection of formalized mathematical knowledge in machine learnable format.


Safe-DS: A Domain Specific Language to Make Data Science Safe

Reimann, Lars, Kniesel-Wünsche, Günter

arXiv.org Artificial Intelligence

Due to the long runtime of Data Science (DS) pipelines, even small programming mistakes can be very costly, if they are not detected statically. However, even basic static type checking of DS pipelines is difficult because most are written in Python. Static typing is available in Python only via external linters. These require static type annotations for parameters or results of functions, which many DS libraries do not provide. In this paper, we show how the wealth of Python DS libraries can be used in a statically safe way via Safe-DS, a domain specific language (DSL) for DS. Safe-DS catches conventional type errors plus errors related to range restrictions, data manipulation, and call order of functions, going well beyond the abilities of current Python linters. Python libraries are integrated into Safe-DS via a stub language for specifying the interface of its declarations, and an API-Editor that is able to extract type information from the code and documentation of Python libraries, and automatically generate suitable stubs. Moreover, Safe-DS complements textual DS pipelines with a graphical representation that eases safe development by preventing syntax errors. The seamless synchronization of textual and graphic view lets developers always choose the one best suited for their skills and current task. We think that Safe-DS can make DS development easier, faster, and more reliable, significantly reducing development costs.


How viable is it to create microservices in Python?

#artificialintelligence

Developers have discovered plenty of reasons to create microservices in Python, from its foundation in object-oriented programming, to its ability to handle REST APIs, to its out-of-the-box support for application prototyping. In particular, its proponents praise Python's array of built-in features that help isolate key application processes and integrate dynamic collections of distributed services. As is the case with any programming language, however, Python also introduces its share of challenges to navigate. For some -- particularly those not well-versed in interpreted languages or have pressing needs for quick compile times -- Python might not be the ideal language for their microservices development efforts. Let's look at the reasons why developers might want to create microservices in Python, examine the standout features that streamline application build processes, and point out the potential hurdles that developers may encounter.


100%OFF

#artificialintelligence

When you Enroll in Master Python Programming Course, You will Get Weekly Basis Classes As we Regularly UPDATE This Course. What you will get in this course Regularly! Python which is developed by Guido van Rossum that is the general-purpose programming language that is used to create any kind of software using its powerful and standard libraries. There is a number of standard libraries that are developed with Python you can work with any field to get required functionalities like in Web development, AI, ML, Data Science, Data analytics, etc. This course is created by me (Faisal Zamir -- JafriCode) which contains and everything related to Python from introduction to Python to creating an application with Python and providing home assignments to all students.


Code Algorithms

#artificialintelligence

Originally published on Towards AI the World's Leading AI and Technology News and Media Company. If you are building an AI-related product or service, we invite you to consider becoming an AI sponsor. At Towards AI, we help scale AI and technology startups. Let us help you unleash your technology to the masses. As long as coding and programming are used, algorithms will be at the heart of these technologies, defining what they do and how they do it.


Is Python easy to learn?

#artificialintelligence

Python is the object-oriented programming language used by many computer scientists, math and engineering students, and independent programmers. Web browsers, embedded systems, machine learning, and artificial intelligence actively use Python. Python started as a research tool that the scientific community used to build complex scientific applications, but it has become more popular with users in other fields and industries. The most common Python projects involve data mining, data science, code simplification, and the construction of APIs. Even if Python is not easy to learn, I do think it's one of the most user-friendly languages out there.


Is GitHub Copilot a blessing, or a curse?

#artificialintelligence

GitHub Copilot is a new service from GitHub and OpenAI, described as "Your AI pair programmer". It is a plugin to Visual Studio Code which auto-generates code for you based on the contents of the current file, and your current cursor location. It really feels quite magical to use. For example, here I've typed the name and docstring of a function which should "Write text to file fname": The grey body of the function has been entirely written for me by Copilot! I just hit Tab on my keyboard, and the suggestion gets accepted and inserted into my code. This is certainly not the first "AI powered" program synthesis tool.


The Tactician (extended version): A Seamless, Interactive Tactic Learner and Prover for Coq

Blaauwbroek, Lasse, Urban, Josef, Geuvers, Herman

arXiv.org Artificial Intelligence

Tactician helps users make tactical proof decisions while they retain control over the general proof strategy. To this end, Tactician learns from previously written tactic scripts and gives users either suggestions about the next tactic to be executed or altogether takes over the burden of proof synthesis. Tactician's goal is to provide users with a seamless, interactive, and intuitive experience together with robust and adaptive proof automation. In this paper, we give an overview of Tactician from the user's point of view, regarding both day-to-day usage and issues of package dependency management while learning in the large. Finally, we give a peek into Tactician's implementation as a Coq plugin and machine learning platform.