The unsafe features of C make it a big challenge to ensure memory safety of C programs, and often lead to memory errors that can result in vulnerabilities. Various formal verification techniques for ensuring memory safety of C have been proposed. However, most of them either have a high overhead, such as state explosion problem in model checking, or have false positives, such as abstract interpretation. In this article, by innovatively borrowing ownership system from Rust, we propose a novel and sound static memory safety analysis approach, named SafeOSL. Its basic idea is an ownership-based intermediate language, called ownership system language (OSL), which captures the features of the ownership system in Rust. Ownership system specifies the relations among variables and memory locations, and maintains invariants that can ensure memory safety. The semantics of OSL is formalized in K-framework, which is a rewriting-logic based tool. C programs to be checked are first transformed into OSL programs and then detected by OSL semantics. Experimental results have demonstrated that SafeOSL is effective in detecting memory errors of C. Moreover, the translations and experiments indicate that the intermediate language OSL could be reused by other programming languages to detect memory errors.
Forecasting the motion of surrounding vehicles is necessary for a self-driving vehicle to plan a safe and efficient trajectory for the future. Like experienced human drivers, the self-driving vehicle needs to perceive the interaction of surrounding vehicles and decide the best trajectory from many choices. However, previous methods either lack modeling of interactions or ignore the multi-modal nature of this problem. In this paper, we focus on two important cues of trajectory prediction: interaction and maneuver, and propose Maneuver conditioned Attentional Network named MAN. MAN learns the interactions of all vehicles in a scenario in parallel by self-attention social pooling and the attentional decoder generates the future trajectory conditioned on the predicted maneuver among 3 classes: Lane Changing Left (LCL), Lane Changing Right (LCR) and Lane Keeping (LK). Experiments demonstrate the improvement of our model in prediction on the publicly available NGSIM and HighD datasets. We also present quantitative analysis to study the relationship between maneuver prediction accuracy and trajectory error.
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.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.