# System Informatics, 2017, # 9

Download full number (4.95 MB)

Download full number (4.95 MB)

The relations of compatibility, consistency and identity are used to describe the semantics of the predicate programming language P. Recursive types are defined with the smallest fixed point. A generic type is described by a set of constraints. For expressions of duck type, the rules to define variable types are introduced. Algorithms for checking of recursion correctness, for determining the language construct types, and for checking the semantic correctness of constructs are developed.

The AVL-tree operators are usually presented in functional languages in compact and elegant stile. However functional programs for insertion and removal operators are ineffective. They implement the construction of new tree but not the modification of the source tree. The paper describes the predicate programs for two algorithms of insertions into an AVL-tree. The predicate program can be automatically transformed to effective imperative programs.

A review of the works that form the theoretical foundations of computation on Sleptsov nets and represent peculiarities of the drawing, compilation and linking of programs in the Sleptsov nets language, as well as massively parallel computing memory architectures for implementation of Sleptsov net processors is presented. The Petri net runs exponentially slower and represents a special case of the Sleptsov net. A universal Sleptsov net containing 13 places and 26 transitions is considered, which is a prototype of the Sleptsov net processor. Examples of programs in the Sleptsov nets language for efficient multiplication, RSA encryption / decryption, calculation of a fuzzy logic function, and solution of the Laplace equation are shown. The advantages of computations on Sleptsov nets are: visual graphical language, preserving the natural parallelism of domain, fine granulation of parallel computations, formal methods for parallel programs verification, and fast massively parallel architectures that implement the computation model.

In the predicate programming compiler, optimizing transformations of the list and tree operations are described. The set of rules for replacement of the original operation to its image in the target imperative language has been developed. The translated imperative program is as effective as if it would be written manually.

The paper presents an approach to the ontology-controlled organization of the process of information extraction from texts of clinical trials protocols. Individual components of the knowledge model, such as semantic vocabulary, text genre model, clinical trials ontology, are considered. Typical situations to be extracted are described and exemplified.

The article describes the structure of the ontology of specification patterns from the texts of technical documentation. This ontology combines patterns of known classifications of requirements with new patterns. The ontology allows the recording of Boolean pattern combinations of the following types: qualitative, real and branching time, with combined events, quantitative characteristics of events and patterns, and simple statements about the data. Examples of the requirement patterns for the real vacuum control system of the Large Solar Vacuum Telescope are given. The scheme of intellectual support system for formal verification of distributed program systems is outlined.

In the paper the notion of the conceptual model of a programming language is proposed. This formalism represents types of the programming language, values, exceptions, states and executable constructs of the abstract machine of the language, and the constraints for these entities at the conceptual level. The new definition of conceptual transition systems oriented to specification of conceptual models of programming languages is presented, the language of redefined conceptual transition systems CTSL is described, and the technique of the use of CTSL as a domain-specific language of specification of conceptual models of programming languages is proposed. The conceptual models for the family of sample programming languages illustrate this technique.

In the paper the notion of the conceptual operational semantics of a programming language is proposed. This formalism represents operational semantics of a programming language in terms of its conceptual model based on conceptual transition systems. The special kind of conceptual transition systems, operational conceptual transition systems, oriented to specification of conceptual operational semantics of programming languages is defined, the extension of the language of conceptual transition systems CTSL for operational conceptual transition systems is described, and the technique of the use of the extended CTSL as a domain-specific language of specification of conceptual operational semantics of programming languages is proposed. The conceptual operational semantics for the family of sample programming languages illustrate this technique.