acl2的安装和vescmul的运行

使用sat一类的求解器验证乘法器,通常无法收敛,Mertcan Temel博士基于acl2实现了数字电路中乘法器的验证。下面简单介绍一下acl2的安装、vescmul的运行。

1.下载acl2

git clone https://github.com/acl2/acl2.git

2.acl2基于lisp编程语言实现,这里需下载lisp的一个编译器ccl

wget https://github.com/Clozure/ccl/releases/download/v1.13/ccl-1.13-linuxx86.tar.gz

测试刚下载的ccl在本地是否可用

cd ccl
./lx86cl64 --verion

如果报告“./lx86cl64: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by ./lx86cl64)”,则需重新编译lx86cl64

cd lisp-kernel/linuxx8664
make clean && make

在acl2/books/projects/rp-rewriter/lib/mult3中确认top.lisp文件的存在

按照Building-an-ipasir-solver-library教程,构建libipasirglucose4.so

设置IPASIR_SHARED_LIBRARY环境变量

export IPASIR_SHARED_LIBRARY=/absolute_path/libipasirglucose4.so

3.编译acl2

cd acl2/books
make LISP=ccl/lx86cl64 basic add-ons centaur -j

4.下载vescmul

wget https://temelmertcan.github.io/vescmul.zip

vescmul目前使用acl2验证乘法器的接口为parse-and-create-svtv、verify-svtv-of-mult

github上的acl2验证乘法器的接口已经更新为vescmul-parse、vescmul-verify,接口参数大致相同,写好acl2验证脚本verify.lisp后,执行如下命令

bin/cert.sh verify.lisp

最后在generated-proof-summary中查看验证结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/52411.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sparse Kernel Canonical Correlation Analysis

论文链接:https://arxiv.org/pdf/1701.04207 看这篇论文终于看懂核函数了。。谢谢作者

基于无人机边沿相关 ------- IBUS、SBUS协议和PPM信号

文章目录 一、IBUS协议二、SBUS协议三、PPM信号 一、IBUS协议 IBUS(Intelligent Bus)是一种用于电子设备之间通信的协议,采用串行通信方式,允许多设备通过单一数据线通信,较低延迟,支持多主机和从机结构&a…

SpringBoot集成kafka-监听器注解

SpringBoot集成kafka-监听器注解 1、application.yml2、生产者3、消费者4、测试类5、测试 1、application.yml #自定义配置 kafka:topic:name: helloTopicconsumer:group: helloGroup2、生产者 package com.power.producer;import com.power.model.User; import com.power.uti…

C++11详解 (右值引用、可变参数模板、emplace_back、lambda表达式、function、bind)

目录 简介 左值引用与右值引用 左值引用与右值引用是什么 左值引用与右值引用的比较 右值引用的使用场景与C11中STL的新变化 完美转发 新的类功能 可变参数模板 可变参数模板的应用——emplace_back lambda表达式 包装器 function bind 结语 简介 在过往&#xf…

UGUI空白可点击组件,减少重绘

如果使用image alpha 0,会导致overDraw,直接清空mesh,不绘制即可避免 #if UNITY_EDITOR using UnityEditor; #endif using UnityEngine; using UnityEngine.UI; namespace UnityGameFramework { [AddComponentMenu("Game/UI/GameEmpty4Raycast")] [Requir…

基于vue框架的毕业设计选题系统bqx47(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:学生,指导老师,课题信息,类型,选题信息 开题报告内容 基于Vue框架的毕业设计选题系统 开题报告 一、引言 毕业设计选题是高等教育中极为关键的一环,它不仅关乎学生未来研究的方向与深度,也是培养其创新思维和实…

Node.js-身份证号实名认证-小程序实名认证接口集成方法

使用身份证实名认证API之前,首先要确保已有一个可运行的开发环境,例如小程序或应用程序开发环境。这将是集成和测试API的基础。在应用中设计一个用户输入界面,用于用户输入姓名和身份证号码,同时设计提交按钮以触发验证流程。 在选…

Java 调用三方文件上传接口

Java 调用三方文件上传接口 url 为三方接口地址files为上传的文件信息,类型为File类型 // 构造MultiResource MultiResource multiResource new MultiResource(files.stream().map(multipartFile -> {try {return new InputStreamResource(Files.newInputStr…

SSRF漏洞与redis未授权访问的共同利用

1.利用靶场Pikachu来认识SSRF漏洞 1.什么是SSRF SSRF漏洞允许攻击者通过向服务器发起请求来伪造请求。这种漏洞的核心在于攻击者能够控制服务器向任意目标地址发起请求,而这些请求通常是攻击者无法直接从客户端发起的。 简单来说,假设你的网站有一个功能…

Linux的tmux命令使用

tmux ("terminal multiplexer"的简称), 是一款优秀的终端复用软件,tmux来自于openbsd,采用bsd授权。使用它最直观的好处就是, 通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台…

rk3568 npu opencv 怎么联系起来

问题: 客户一直再问 关于 3568 npu opencv 的编译内容。 大致了解一些 ,这方面的内容。 网上的资料。 也许这个基本上就是他的逻辑了, 首先界面使用QT来写。 然后,使用 opencv 去读取摄像头。 然后拿到一帧图像之后&#xff…

IO进程线程8月26ri

1&#xff0c;思维导图 2&#xff0c;用两个进程分别复制文件的上下两部分到另一个文件 #include<myhead.h> int main(int argc, const char *argv[]) {int fpopen("./1.txt",O_RDONLY);if(fp-1){perror("open");return -1;}int countlseek(fp,0,SE…

电脑U口管理软件分享|U口管理软件哪个好?

电脑U口&#xff08;即USB端口&#xff09;管理软件是保护电脑安全、防止数据泄露和恶意软件入侵的重要工具。 在选择U口管理软件时&#xff0c;需要考虑其功能、易用性、安全性以及是否满足个人或企业的具体需求。以下是一些值得推荐的电脑U口管理软件及其特点&#xff1a; 1…

基本数据类型及命令

String String 是Redis最基本的类型&#xff0c;Redis所有的数据结构都是以唯一的key字符串作为名称&#xff0c;然后通过这个唯一的key值获取相应的value数据。不同的类型的数据结构差异就在于value的结构不同。 String类型是二进制安全的。意思是string可以包含任何数据&…

Linux:Linux线程池

目录 线程池的概念 线程池的优点 线程池的应用场景 线程池的实现 线程池演示 线程池的概念 线程池是一种线程使用模式。 线程过多会带来调度开销&#xff0c;进而影响缓存局部和整体性能&#xff0c;而线程池维护着多个线程&#xff0c;等待着监督管理者分配可并发执行的…

每日OJ_牛客_剪花布条(string内置函数)

目录 牛客_剪花布条&#xff08;string内置函数&#xff09; 解析代码 牛客_剪花布条&#xff08;string内置函数&#xff09; 剪花布条__牛客网 解析代码 题意就是在S串中&#xff0c;T串整体出现了多少次。C语言可以通过strstr函数找&#xff0c;用STL的string库可以通过f…

mysql练习5

数据准备 创建两张表:部门(dept)和员工(emp)&#xff0c;并插入数据&#xff0c;代码如下 create table dept( dept id int primary key auto increment comment部门编号, dept_name char(20)comment部门名称 ); insert into d…

排序1

一、概述 直接插入排序 是稳定排序 二、插入排序 1&#xff09;直接插入排序 2&#xff09;折半插入排序 3)希尔排序 、 三、交换排序 1&#xff09;冒泡排序 2&#xff09;快速排序

Redis计数器:数字的秘密

文章目录 Redis计数器incr 指令用户计数统计用户统计信息查询缓存一致性 小结 技术派项目源码地址 : Gitee :技术派 - https://gitee.com/itwanger/paicodingGithub :技术派 - https://github.com/itwanger/paicoding 用户的相关统计信息 文章数&#xff0c;文章总阅读数&am…

绿洲乐队重组?加拉格尔兄弟重组音乐会的猜测越来越多

据报道&#xff0c;这支英国传奇摇滚乐队计划于 2025 年夏天在曼彻斯特和伦敦举办一系列大型演出。 加拉格尔兄弟终于和解了吗&#xff1f;越来越多的猜测认为&#xff0c;利亚姆和诺埃尔已经放下他们之间的传奇分歧&#xff0c;重新组建绿洲乐队&#xff0c;并举办一场必定是几…