The majority of industrial-strength object-oriented (OO) software is written using nominally-typed OO programming languages. Extant domaintheoretic models of OOP developed to analyze OO type systems miss, however, a crucial feature of these mainstream OO languages: nominality. This paper presents the construction of NOOP as the first domain-theoretic model of OOP that includes full class/type names information found in nominallytyped OOP. Inclusion of nominal information in objects of NOOP and asserting that type inheritance in statically-typed OO programming languages is an inherently nominal notion allow readily proving that type inheritance and subtyping are completely identified in these languages. This conclusion is in full agreement with intuitions of developers and language designers of these OO languages, and contrary to the belief that "inheritance is not subtyping," which came from assuming non-nominal (a.k.a., structural) models of OOP.To motivate the construction of NOOP, this paper briefly presents the benefits of nominal-typing to mainstream OO developers and OO language designers, as compared to structural-typing. After presenting NOOP, the paper further briefly compares NOOP to the most widely known domain-theoretic models of OOP. Leveraging the development of NOOP, the comparisons presented in this paper provide clear, brief and precise technical and mathematical accounts for the relation between nominal and structural OO type systems. NOOP, thus, provides a firmer semantic foundation for analyzing and progressing nominally-typed OO programming languages.Date: July 2016.
In this paper, a new encryption mode, which we call the 2D-Encryption Mode, is presented. 2D-Encrytpion Mode extends 1D-encryption modes, as ECB, CBC and CTR, to two dimensions. It has good security and practical properties. We first look at the type of problems it tries to solve, then describe the technique and its properties, and present a detailed mathematical analysis of its security, and finally discuss some practical issues related to its implementation.
In domain theory every finite computable object can be represented by a single mathematical object instead of a set of objects, using the notion of finitary basis. In this article we report on our effort to formalize domain theory in Coq in terms of finitary basis.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.