With the increasingly severe situation of Internet security, how to effectively guarantee the information security in the network has become an important topic of current network security research. Traditional cryptog...
详细信息
E-Government is a model of government system based on the power of digital technology. The form of Indonesia’s seriousness in improving public services based on the use of information and communication technology is ...
详细信息
Generative artificial intelligence (AI) is revolutionizing many aspects of both academia and society. Its effective integration in computer science education is a current challenge for educators. This work presents an...
详细信息
This paper introduces CodeMotion: an AST-driven web-based program visualization tool designed to improve learners’ understanding of javaScript code execution and algorithmic concepts through interactive visual explor...
详细信息
Contemporary computer architecture comprises multicomputer settings. Multiple computers provide the facility of high performance to implement multiple threads that are faster and concurrently with different processors...
详细信息
Large language Models (LLMs) are currently used extensively to generate code by professionals and students, motivating the development of tools to detect LLM-generated code for applications such as academic integrity ...
详细信息
When building enterprise applications (EAs) on java frameworks (e.g., Spring), developers often configure application components via metadata (i.e., java annotations and XML files). It is challenging for developers to...
详细信息
This study examines the impact of tokenized java code length on the accuracy and explicitness of ten major LLMs in vulnerability detection. Using chi-square tests and known ground truth, we found inconsistencies acros...
详细信息
Datalog engines for fixpoint evaluation have brought great benefits to static program analysis over the past decades. A Datalog specification of an analysis allows a declarative, easy-to-maintain specification, withou...
详细信息
Datalog engines for fixpoint evaluation have brought great benefits to static program analysis over the past decades. A Datalog specification of an analysis allows a declarative, easy-to-maintain specification, without sacrificing performance, and indeed often achieving significant speedups compared to hand-coded algorithms. However, these benefits come with a certain loss of control. Datalog evaluation is bottom-up, meaning that all inferences (from a set of initial facts) are performed and all their conclusions are outputs of the computation. In practice, virtually every program analysis expressed in Datalog becomes unscalable for some inputs, due to the worst-case blowup of computing all results, even when a partial answer would have been perfectly satisfactory. In this work, we present a simple, uniform, and elegant solution to the problem, with stunning practical effectiveness and application to virtually any Datalog-based analysis. The approach consists of leveraging the choice construct, supported natively in modern Datalog engines like Soufflé. The choice construct allows the definition of functional dependencies in a relation and has been used in the past for expressing worklist algorithms. We show a near-universal construction that allows the choice construct to flexibly limit evaluation of predicates. The technique is applicable to practically any analysis architecture imaginable, since it adaptively prunes evaluation results when a (programmer-controlled) projection of a relation exceeds a desired cardinality. We apply the technique to probably the largest, pre-existing Datalog analysis frameworks in existence: Doop (for java bytecode) and the main client analyses from the Gigahorse framework (for Ethereum smart contracts). Without needing to understand the existing analysis logic and with minimal, local-only changes, the performance of each framework increases dramatically, by over 20x for the hardest inputs, with near-negligible sacrifice in completene
Ensuring code correctness remains a challenging problem even as large language models (LLMs) become increasingly capable at code-related tasks. While LLM-based program repair systems can propose bug fixes using only a...
详细信息
暂无评论