Though obstruction-free progress property is weaker than other non-blocking properties including lock-freedom and wait-freedom,it has advantages that have led to the use of obstruction-free implementations for softwar...Though obstruction-free progress property is weaker than other non-blocking properties including lock-freedom and wait-freedom,it has advantages that have led to the use of obstruction-free implementations for software transactional memory(STM)and in anonymous and fault-tolerant distributed computing.However,existing work can only verify obstruction-freedom of specific data structures(e.g.,STM and list-based algorithms).In this paper,to fill this gap,we propose a program logic that can formally verify obstruction-freedom of practical implementations,as well as verify linearizability,a safety property,at the same time.We also propose informal principles to extend a logic for verifying linearizability to verifying obstruction-freedom.With this approach,the existing proof for linearizability can be reused directly to construct the proof for both linearizability and obstruction-freedom.Finally,we have successfully applied our logic to verifying a practical obstruction-free double-ended queue implementation in the first classic paper that has proposed the definition of obstruction-freedom.展开更多
Code defects can lead to software vulnerability and even produce vulnerability risks.Existing research shows that the code detection technology with text analysis can judge whether object-oriented code files are defec...Code defects can lead to software vulnerability and even produce vulnerability risks.Existing research shows that the code detection technology with text analysis can judge whether object-oriented code files are defective to some extent.However,these detection techniques are mainly based on text features and have weak detection capabilities across programs.Compared with the uncertainty of the code and text caused by the developer’s personalization,the programming language has a stricter logical specification,which reflects the rules and requirements of the language itself and the developer’s potential way of thinking.This article replaces text analysis with programming logic modeling,breaks through the limitation of code text analysis solely relying on the probability of sentence/word occurrence in the code,and proposes an object-oriented language programming logic construction method based on method constraint relationships,selecting features through hypothesis testing ideas,and construct support vector machine classifier to detect class files with defects and reduce the impact of personalized programming on detection methods.In the experiment,some representative Android applications were selected to test and compare the proposed methods.In terms of the accuracy of code defect detection,through cross validation,the proposed method and the existing leading methods all reach an average of more than 90%.In the aspect of cross program detection,the method proposed in this paper is superior to the other two leading methods in accuracy,recall and F1 value.展开更多
LP (Logic Programming) has been successfully applied to knowledge discovery in many fields. The execution of the LP is based on the evaluation of the first order predicate. Usually the information involved in the pred...LP (Logic Programming) has been successfully applied to knowledge discovery in many fields. The execution of the LP is based on the evaluation of the first order predicate. Usually the information involved in the predicates are local and homogenous, thus the evaluation process is relatively simple. However, the evaluation process become much more complicated when applied to KDD on the Internet where the information involved in the predicates maybe heterogeneous and distributed over many different sits. Therefor, we try to attack the problem in a multi agent system's framework so that the logic program can be written in a site independent style and deal easily with heterogeneous represented information.展开更多
Inductive logic programming adopts the standard horn lope program as its logic framework for inductivelearning. Due to the fact, however, that the expressive power of horn logic is relatively limited and the mechansm ...Inductive logic programming adopts the standard horn lope program as its logic framework for inductivelearning. Due to the fact, however, that the expressive power of horn logic is relatively limited and the mechansm ofnegation is mostly that of negation as failure, it is difficult to make full use of negative information and consequentlynot suitable for inductive learning. This Paper adopts nounal lope program as me language of inductive logic programsand presents accordingly a kind of semantics called Limited Negation semantics. The issues of direct denotation andinference of negation in concept induction are solved. The paper shows that LN is directly generalized for the semantics of Well-Founded in die significance Of optional negation and has superior theoretical features, especially the capability Of expressing and processing negation by introducing the constant ’false’. ExperimentS also show that the inductive concepts in learning are accurately interpreted with LN.展开更多
A method is presented for incrementally computing success patterns of logic programs. The set of success patterns of a logic program with respect to an abstraction is formulated as the success set of an equational log...A method is presented for incrementally computing success patterns of logic programs. The set of success patterns of a logic program with respect to an abstraction is formulated as the success set of an equational logic program modulo an equality theory that is induced by the abstraction. The method is exemplified via depth and stump abstractions. Also presented are algorithms for computing most general unifiers modulo equality theories induced by depth and stump abstractions.展开更多
During the last years, we have developed the FLOPER platform for providing a practical support to the so-called Multi-Adjoint Logic Programming approach (MALP in brief), which represents an extremely flexible framewor...During the last years, we have developed the FLOPER platform for providing a practical support to the so-called Multi-Adjoint Logic Programming approach (MALP in brief), which represents an extremely flexible framework into the Fuzzy Logic Programming arena. Nowadays, FLOPER is useful for compiling (to standard Prolog code), executing and debugging (by drawing execution trees) MALP programs, and it is ready for being extended in the near future with powerful transformation and optimization techniques designed in our research group during the recent past. Our last update consists in the integration of a graphical interface for a comfortable interaction with the system which allows, among other capabilities, the use of projects for packing scripts and auxiliary definitions of fuzzy sets/connectives, together with fuzzy programs and their associated lattices modeling truth-degrees beyond the simpler crisp case ﹛true;false﹜.展开更多
To overcome inefficiency in traditional logic programming, a declarative programming language COPS is designed based on the notion of concurrent constraint programming (CCP). The improvement is achieved by the adoptio...To overcome inefficiency in traditional logic programming, a declarative programming language COPS is designed based on the notion of concurrent constraint programming (CCP). The improvement is achieved by the adoption of constraint-based heuristic strategy and the introduction of deterministic components in the framework of CCP. Syntax specification and an operational semantic description are presented.展开更多
Dynamic positioning capability(DPCap) analysis is essential in the selection of thrusters, in their configuration, and during preliminary investigation of the positioning ability of a newly designed vessel dynamic pos...Dynamic positioning capability(DPCap) analysis is essential in the selection of thrusters, in their configuration, and during preliminary investigation of the positioning ability of a newly designed vessel dynamic positioning system.DPCap analysis can help determine the maximum environmental forces, in which the DP system can counteract in given headings. The accuracy of the DPCap analysis is determined by the precise estimation of the environmental forces as well as the effectiveness of the thrust allocation logic. This paper is dedicated to developing an effective and efficient software program for the DPCap analysis for marine vessels. Estimation of the environmental forces can be obtained by model tests, hydrodynamic computation and empirical formulas. A quadratic programming method is adopted to allocate the total thrust on every thruster of the vessel. A detailed description of the thrust allocation logic of the software program is given. The effectiveness of the new program DPCap Polar Plot(DPCPP)was validated by a DPCap analysis for a supply vessel. The present study indicates that the developed program can be used in the DPCap analysis for marine vessels. Moreover, DPCap analysis considering the thruster failure mode might give guidance to the designers of vessels whose thrusters need to be safer.展开更多
In order to provide scientists with a computational methodology and some computational tools to program their epistemic processes in scientific discovery, we are establishing a novel programming paradigm, named ‘Epis...In order to provide scientists with a computational methodology and some computational tools to program their epistemic processes in scientific discovery, we are establishing a novel programming paradigm, named ‘Epistemic Programming’, which regards conditionals as the subject of computing, takes primary epistemic operations as basic operations of computing, and regards epistemic processes as the subject of programming. This paper presents our fundamental observations and assumptions on scientific discovery processes and their automation, research problems on modeling, automating, and programming epistemic processes, and an outline of our research project of Epistemic Programming.展开更多
High performance computer is often required by model predictive control(MPC) systems due to the heavy online computation burden.To extend MPC to more application cases with low-cost computation facilities, the impleme...High performance computer is often required by model predictive control(MPC) systems due to the heavy online computation burden.To extend MPC to more application cases with low-cost computation facilities, the implementation of MPC controller on field programmable gate array(FPGA) system is studied.For the dynamic matrix control(DMC) algorithm,the main design idea and the implemental strategy of DMC controller are introduced based on a FPGA’s embedded system.The performance tests show that both the computation efficiency and the accuracy of the proposed controller can be satisfied due to the parallel computing capability of FPGA.展开更多
基金the National Natural Science Foundation of China(Grant No.61632005)。
文摘Though obstruction-free progress property is weaker than other non-blocking properties including lock-freedom and wait-freedom,it has advantages that have led to the use of obstruction-free implementations for software transactional memory(STM)and in anonymous and fault-tolerant distributed computing.However,existing work can only verify obstruction-freedom of specific data structures(e.g.,STM and list-based algorithms).In this paper,to fill this gap,we propose a program logic that can formally verify obstruction-freedom of practical implementations,as well as verify linearizability,a safety property,at the same time.We also propose informal principles to extend a logic for verifying linearizability to verifying obstruction-freedom.With this approach,the existing proof for linearizability can be reused directly to construct the proof for both linearizability and obstruction-freedom.Finally,we have successfully applied our logic to verifying a practical obstruction-free double-ended queue implementation in the first classic paper that has proposed the definition of obstruction-freedom.
基金This work was supported by National Key RD Program of China under Grant 2017YFB0802901.
文摘Code defects can lead to software vulnerability and even produce vulnerability risks.Existing research shows that the code detection technology with text analysis can judge whether object-oriented code files are defective to some extent.However,these detection techniques are mainly based on text features and have weak detection capabilities across programs.Compared with the uncertainty of the code and text caused by the developer’s personalization,the programming language has a stricter logical specification,which reflects the rules and requirements of the language itself and the developer’s potential way of thinking.This article replaces text analysis with programming logic modeling,breaks through the limitation of code text analysis solely relying on the probability of sentence/word occurrence in the code,and proposes an object-oriented language programming logic construction method based on method constraint relationships,selecting features through hypothesis testing ideas,and construct support vector machine classifier to detect class files with defects and reduce the impact of personalized programming on detection methods.In the experiment,some representative Android applications were selected to test and compare the proposed methods.In terms of the accuracy of code defect detection,through cross validation,the proposed method and the existing leading methods all reach an average of more than 90%.In the aspect of cross program detection,the method proposed in this paper is superior to the other two leading methods in accuracy,recall and F1 value.
文摘LP (Logic Programming) has been successfully applied to knowledge discovery in many fields. The execution of the LP is based on the evaluation of the first order predicate. Usually the information involved in the predicates are local and homogenous, thus the evaluation process is relatively simple. However, the evaluation process become much more complicated when applied to KDD on the Internet where the information involved in the predicates maybe heterogeneous and distributed over many different sits. Therefor, we try to attack the problem in a multi agent system's framework so that the logic program can be written in a site independent style and deal easily with heterogeneous represented information.
文摘Inductive logic programming adopts the standard horn lope program as its logic framework for inductivelearning. Due to the fact, however, that the expressive power of horn logic is relatively limited and the mechansm ofnegation is mostly that of negation as failure, it is difficult to make full use of negative information and consequentlynot suitable for inductive learning. This Paper adopts nounal lope program as me language of inductive logic programsand presents accordingly a kind of semantics called Limited Negation semantics. The issues of direct denotation andinference of negation in concept induction are solved. The paper shows that LN is directly generalized for the semantics of Well-Founded in die significance Of optional negation and has superior theoretical features, especially the capability Of expressing and processing negation by introducing the constant ’false’. ExperimentS also show that the inductive concepts in learning are accurately interpreted with LN.
文摘A method is presented for incrementally computing success patterns of logic programs. The set of success patterns of a logic program with respect to an abstraction is formulated as the success set of an equational logic program modulo an equality theory that is induced by the abstraction. The method is exemplified via depth and stump abstractions. Also presented are algorithms for computing most general unifiers modulo equality theories induced by depth and stump abstractions.
文摘During the last years, we have developed the FLOPER platform for providing a practical support to the so-called Multi-Adjoint Logic Programming approach (MALP in brief), which represents an extremely flexible framework into the Fuzzy Logic Programming arena. Nowadays, FLOPER is useful for compiling (to standard Prolog code), executing and debugging (by drawing execution trees) MALP programs, and it is ready for being extended in the near future with powerful transformation and optimization techniques designed in our research group during the recent past. Our last update consists in the integration of a graphical interface for a comfortable interaction with the system which allows, among other capabilities, the use of projects for packing scripts and auxiliary definitions of fuzzy sets/connectives, together with fuzzy programs and their associated lattices modeling truth-degrees beyond the simpler crisp case ﹛true;false﹜.
文摘To overcome inefficiency in traditional logic programming, a declarative programming language COPS is designed based on the notion of concurrent constraint programming (CCP). The improvement is achieved by the adoption of constraint-based heuristic strategy and the introduction of deterministic components in the framework of CCP. Syntax specification and an operational semantic description are presented.
基金financially supported by the National Natural Science Foundation of China(Grant Nos.51179103 and51709170)the 7th Generation Ultra Deep Water Drilling Unit Innovation Project and the Shanghai Sailing Program(Grant No.17YF1409700)
文摘Dynamic positioning capability(DPCap) analysis is essential in the selection of thrusters, in their configuration, and during preliminary investigation of the positioning ability of a newly designed vessel dynamic positioning system.DPCap analysis can help determine the maximum environmental forces, in which the DP system can counteract in given headings. The accuracy of the DPCap analysis is determined by the precise estimation of the environmental forces as well as the effectiveness of the thrust allocation logic. This paper is dedicated to developing an effective and efficient software program for the DPCap analysis for marine vessels. Estimation of the environmental forces can be obtained by model tests, hydrodynamic computation and empirical formulas. A quadratic programming method is adopted to allocate the total thrust on every thruster of the vessel. A detailed description of the thrust allocation logic of the software program is given. The effectiveness of the new program DPCap Polar Plot(DPCPP)was validated by a DPCap analysis for a supply vessel. The present study indicates that the developed program can be used in the DPCap analysis for marine vessels. Moreover, DPCap analysis considering the thruster failure mode might give guidance to the designers of vessels whose thrusters need to be safer.
基金Supported in part by The Ministry of EducationCulture+1 种基金SportsScience and Technology of Japan under Grant-in-Aid for Explor
文摘In order to provide scientists with a computational methodology and some computational tools to program their epistemic processes in scientific discovery, we are establishing a novel programming paradigm, named ‘Epistemic Programming’, which regards conditionals as the subject of computing, takes primary epistemic operations as basic operations of computing, and regards epistemic processes as the subject of programming. This paper presents our fundamental observations and assumptions on scientific discovery processes and their automation, research problems on modeling, automating, and programming epistemic processes, and an outline of our research project of Epistemic Programming.
基金the National Science Foundation of China(Nos.60934007 and 61074060)the Postdoctoral Science Foundation of China(No.20090460627)+2 种基金the Postdoctoral Scientific Program of Shanghai (No.10R21414600)the Specialized Research Fund for the Doctoral Program of Higher Education (No.20070248004)the China Postdoctoral Science Foundation Special Support(No.201003272)
文摘High performance computer is often required by model predictive control(MPC) systems due to the heavy online computation burden.To extend MPC to more application cases with low-cost computation facilities, the implementation of MPC controller on field programmable gate array(FPGA) system is studied.For the dynamic matrix control(DMC) algorithm,the main design idea and the implemental strategy of DMC controller are introduced based on a FPGA’s embedded system.The performance tests show that both the computation efficiency and the accuracy of the proposed controller can be satisfied due to the parallel computing capability of FPGA.