API-Calculus

Last updated

API Calculus is a program that solves calculus problems using operating systems within a device. In 1989, the PI Calculus was created by Robin Milner and was very successful throughout the years. The PI Calculus is an extension of the process algebra CCS, a tool with algebraic languages specific to processing and formulating statements. [1] It provides a formal theory for modeling systems and reasoning about their behaviors. In the PI Calculus, there are two specific variables: name and processes. [2] In 2002, Shahram Rahimi decided to create an upgraded version of the PI Calculus and called it the API Calculus. Milner claimed the detailed characteristics of the API Calculus to be its "Communication Ability, Capacity for Cooperation, Capacity for Reasoning and Learning, Adaptive Behavior, and Trustworthiness." [3] The main purpose of creating this mobile advancement is to better network and communicate with other operators while completing a task. Unfortunately, API Calculus is not perfect and has faced a problem with its security system. The language has seven features created within the device that the PI Calculus does not have. Since this program is so advanced due to the way the software was created and the different abilities offered in the program, it requires conversion into other programming languages so it can be used on various devices and other computing languages. Although API Calculus is currently being used by various other programming languages, modifications are still being made since the security on the API Calculus is causing problems for users.

Contents

What Does It Do?

The main uses of API Calculus are modeling migration, intelligence, natural grouping and security in agent-based systems. [4] This calculus programming language is usually used in various other program languages such as Java. [5] In Java, a famous programming language used by various corporations such as IBM, TCS, and Google, API Calculus is commonly used to solve equations and programs involving calculus.

Features

API Calculus has a wide variety of features including those similar to the PI Calculus but it also has new and improved features such as:

Verification Strategy

The software language used throughout the API Calculus program is translated into two other different languages. It is first translated from API Calculus syntax to ATEL/ATL, then to MOCHA. The outcome of the translating module is like the step previously mentioned. [5]

  1. Input Module( receives API Calculus model )
  2. Translating Model ( converts API syntax to ATEL/ATL syntax )
  3. Model Verification ( MOCHA )
  4. Display Mode

Transferring API syntax to ATEL/ATL requires coding transformation knowledge to successfully transfer.

Syntax

The API program has its own syntax that it follows in order to make the program run smoothly. The program is broken down into four main categories such as terms, processes, knowledge units, and milieu. The terms can be names, terms, facts, rules or functions that are assigned to variable names of the program. The process is the list of expressions used within the program to solve a calculus problem or equation. The knowledge units or commonly known as parameters are the facts and rules that can be used in order to solve the program. Lastly, the milieu is the ability to transfer computer data and information from one computer to another independently. [6]

Flaws

The only flaw that the API Calculus has is that it doesn't have the ability to support a security system on mobile devices such as laptops. The problem is that is any outside source tries to enter the milieu is not allowed to enter because the API Calculus requires proof that is can be a trusted source.

Related Research Articles

<span class="mw-page-title-main">Maple (software)</span> Mathematical computing environment

Maple is a symbolic and numeric computing environment as well as a multi-paradigm programming language. It covers several areas of technical computing, such as symbolic mathematics, numerical analysis, data processing, visualization, and others. A toolbox, MapleSim, adds functionality for multidomain physical modeling and code generation.

In computer science, formal methods are mathematically rigorous techniques for the specification, development, analysis, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the expectation that, as in other engineering disciplines, performing appropriate mathematical analysis can contribute to the reliability and robustness of a design.

Computer science is the study of the theoretical foundations of information and computation and their implementation and application in computer systems. One well known subject classification system for computer science is the ACM Computing Classification System devised by the Association for Computing Machinery.

A modeling language is any artificial language that can be used to express data, information or knowledge or systems in a structure that is defined by a consistent set of rules. The rules are used for interpretation of the meaning of components in the structure of a programming language.

The calculus of communicating systems (CCS) is a process calculus introduced by Robin Milner around 1980 and the title of a book describing the calculus. Its actions model indivisible communications between exactly two participants. The formal language includes primitives for describing parallel composition, choice between actions and scope restriction. CCS is useful for evaluating the qualitative correctness of properties of a system such as deadlock or livelock.

A domain-specific language (DSL) is a computer language specialized to a particular application domain. This is in contrast to a general-purpose language (GPL), which is broadly applicable across domains. There are a wide variety of DSLs, ranging from widely used languages for common domains, such as HTML for web pages, down to languages used by only one or a few pieces of software, such as MUSH soft code. DSLs can be further subdivided by the kind of language, and include domain-specific markup languages, domain-specific modeling languages, and domain-specific programming languages. Special-purpose computer languages have always existed in the computer age, but the term "domain-specific language" has become more popular due to the rise of domain-specific modeling. Simpler DSLs, particularly ones used by a single application, are sometimes informally called mini-languages.

In computer science, the process calculi are a diverse family of related approaches for formally modelling concurrent systems. Process calculi provide a tool for the high-level description of interactions, communications, and synchronizations between a collection of independent agents or processes. They also provide algebraic laws that allow process descriptions to be manipulated and analyzed, and permit formal reasoning about equivalences between processes. Leading examples of process calculi include CSP, CCS, ACP, and LOTOS. More recent additions to the family include the π-calculus, the ambient calculus, PEPA, the fusion calculus and the join-calculus.

Computational science, also known as scientific computing, technical computing or scientific computation (SC), is a division of science that uses advanced computing capabilities to understand and solve complex physical problems. This includes

The general algebraic modeling system (GAMS) is a high-level modeling system for mathematical optimization. GAMS is designed for modeling and solving linear, nonlinear, and mixed-integer optimization problems. The system is tailored for complex, large-scale modeling applications and allows the user to build large maintainable models that can be adapted to new situations. The system is available for use on various computer platforms. Models are portable from one platform to another.

Quantum programming is the process of designing or assembling sequences of instructions, called quantum circuits, using gates, switches, and operators to manipulate a quantum system for a desired outcome or results of a given experiment. Quantum circuit algorithms can be implemented on integrated circuits, conducted with instrumentation, or written in a programming language for use with a quantum computer or a quantum processor.

In computer science, the Actor model and process calculi are two closely related approaches to the modelling of concurrent digital computation. See Actor model and process calculi history.

The actor model and process calculi share an interesting history and co-evolution.

Algebraic modeling languages (AML) are high-level computer programming languages for describing and solving high complexity problems for large scale mathematical computation. One particular advantage of some algebraic modeling languages like AIMMS, AMPL, GAMS, Gekko, MathProg, Mosel, and OPL is the similarity of their syntax to the mathematical notation of optimization problems. This allows for a very concise and readable definition of problems in the domain of optimization, which is supported by certain language elements like sets, indices, algebraic expressions, powerful sparse index and data handling variables, constraints with arbitrary names. The algebraic formulation of a model does not contain any hints how to process it.

Web-based simulation (WBS) is the invocation of computer simulation services over the World Wide Web, specifically through a web browser. Increasingly, the web is being looked upon as an environment for providing modeling and simulation applications, and as such, is an emerging area of investigation within the simulation community.

Modern elementary mathematics is the theory and practice of teaching elementary mathematics according to contemporary research and thinking about learning. This can include pedagogical ideas, mathematics education research frameworks, and curricular material.

PROSE was the mathematical 4GL virtual machine that established the holistic modeling paradigm known as Synthetic Calculus. A successor to the SLANG/CUE simulation and optimization language developed at TRW Systems, it was introduced in 1974 on Control Data supercomputers. It was the first commercial language to employ automatic differentiation (AD), which was optimized to loop in the instruction-stack of the CDC 6600 CPU.

This glossary of computer science is a list of definitions of terms and concepts used in computer science, its sub-disciplines, and related fields, including terms relevant to software, data science, and computer programming.

References

  1. "Process Algebra". theory.stanford.edu. Retrieved 2015-11-09.
  2. Rahimi, Shahram (2011). An Extension to Pi-Calculus for Performance Evaluation. Illinois: Scientific Research.
  3. Rahimi, Shahram (2015-10-20). "ACVisualizer: A Visualization Tool for Api-Calculus" (PDF). ACVisualizer: A Visualization Tool for Api-Calculus.
  4. Rahimi, Shahram (October 20, 2015). "ACVisualizer: A Visualization Tool for Api-Calculus" (PDF). ACVisualizer: A Visualization Tool for Api-Calculus.
  5. 1 2 "The First Stage of a System Verification Strategy for API-Calculus". ResearchGate. Retrieved 2015-10-21.
  6. 1 2 Loia, Vincenzo (2002-01-01). Soft Computing Agents: A New Perspective for Dynamic Information Systems. IOS Press. ISBN   9784274905445.