首页 > 其他分享 >kissat分析01_基本数据结构03_frame_trail

kissat分析01_基本数据结构03_frame_trail

时间:2023-05-26 17:12:04浏览次数:50  
标签:03 01 solver frame unsigned trail kissat push

 

 

frame.h

 1 #define INVALID_TRAIL UINT_MAX
 2 
 3 struct frame
 4 {
 5   unsigned decision;
 6   unsigned trail:LD_MAX_TRAIL;
 7   unsigned used:2;
 8   bool promote:1;
 9 };
10 
11 // *INDENT-OFF*
12 
13 typedef STACK (frame) frames;
14 
15 // *INDENT-ON*
16 
17 struct kissat;
18 
19 void kissat_push_frame (struct kissat *, unsigned decision);
20 
21 #define FRAME(LEVEL) \
22   (PEEK_STACK (solver->frames, (LEVEL)))
23 
24 #endif

frame.c

#include "allocate.h"
#include "internal.h"

void
kissat_push_frame (kissat * solver, unsigned decision)
{
  const size_t trail = SIZE_STACK (solver->trail);
  assert (trail <= MAX_TRAIL);
  frame frame;
  frame.decision = decision;
  frame.trail = trail;
  frame.promote = false;
  frame.used = 0;
  PUSH_STACK (solver->frames, frame);
}
kissat_push_frame在代码中出现的情况
 1 ----------  D:\studySAT\studySAT2023_04_28\Kissat_MAB-HyWalk_hornFrist\src\decide.c
 2 [138]   kissat_push_frame (solver, lit);
 3 [152]   kissat_push_frame (solver, lit);
 4 
 5 ----------  D:\studySAT\studySAT2023_04_28\Kissat_MAB-HyWalk_hornFrist\src\frames.c
 6 [5] kissat_push_frame (kissat * solver, unsigned decision)
 7 
 8 ----------  D:\studySAT\studySAT2023_04_28\Kissat_MAB-HyWalk_hornFrist\src\frames.h
 9 [31] void kissat_push_frame (struct kissat *, unsigned decision);
10 
11 ----------  D:\studySAT\studySAT2023_04_28\Kissat_MAB-HyWalk_hornFrist\src\internal.c
12 [33]   kissat_push_frame (solver, INVALID_LIT);

 

 
   
   
   
   
   
   
   

标签:03,01,solver,frame,unsigned,trail,kissat,push
From: https://www.cnblogs.com/yuweng1689/p/17435276.html

相关文章

  • Heap 0x03
    heap0x03,写写uaf,写完准备刷堆题咯☠️UAF(USE-AFTER-FREE)早就听说过这个漏洞的名,今天......
  • Python - matplotlib 不显示中文 && findfont: Font family ['simsun'] not found
    一.发现问题pythonmatplotlib.plt使用plt.title写标题时,标题显示为方框,无法正常显示中文,遂开始修复之旅。二.尝试解决查询网上大神给出的解决方案是添加全局字体配置:plt.rcParams['font.sans-serif']=['simsun']如果添加后运行代码无findfont:Fontfamily['simsu......
  • EntityFramework Core 删除迁移
    EFCore删除迁移的命令是Remove-Migration。一次只删除一个迁移,并且仅删除尚未应用到数据库的最新迁移。如果强行删除已经应用到数据库的迁移,会抛出异常。删除尚未应用到数据库的最新迁移直接运行Remove-Migration命令即可。删除已经应用到数据库的迁移假设我们已经按顺序应用......
  • Python默认编码错误SyntaxError: Non-ASCII character '\xe5'之解决方法
    在编写Python时,当使用中文输出或注释时运行脚本,会提示错误信息:解决方法:python的默认编码文件是用的ASCII码,你将文件存成了UTF-8!!!(文件中存在中文或者其他语言,就会出现此问题!)解决办法很简单!!!在文件开头加入:# -*- coding: U......
  • ssh远程登录服务器时提示'Permission denied (publickey)'的解决办法
    scp远程拷贝文件时提示错误:Warning:Permanentlyadded'10.0.0.182'(RSA)tothelistofknownhosts.Permissiondenied(publickey).解决:登录10.0.0.182,将/etc/ssh/sshd_config文件中的PasswordAuthenticationno改为PasswordAuthenticationyes重启sshd服务:/etc/init.......
  • ZOJ 3961 Let's Chat
    传送门给你A的区间和B的区间,然后问你重合的区间。答案就是求重合的区间长度-m+1的值。因为数据量不大,所以就让A的每个区间都对B的区间进行匹配,然后求和就可以了。这就是一种暴力。#include<bits/stdc++.h>usingnamespacestd;constintmaxn=150;typedefpair<int,int>pq;p......
  • POJ 3069 Saruman's Army(贪心)
    传送门这个题是说给你n个点,然后让你标记其中尽可能少的点,使得n个点都处于被标记点左右不超过R的区间内我们使用的是贪心算法,也就是我们要将被标记的点尽可能的朝右边去即可,首先我们将他们从左到右进行排序,第一个我们所选取的被标记的点应该是能够包含掉左边的点的最靠右的点。。。......
  • 最完美WIN10_Pro_22H2.19045.3031软件选装纯净版VIP41.7
    【系统简介】=============================================================1.本次更新母盘来自网络某大神。进一步精简优化调整。2.只为呈现最好的作品,手工精简优化部分较多。3.OS版本号为19045.3031。个别要求高的就下MSDN吧,里面啥功能都有。4.集成《DrvCeo-2.13.0.8》网卡版、......
  • JMeter03-性能测试基本概念
    性能测试类型性能测试类型包括负载测试、压力测试、强度测试、容量测试、并发测试、稳定性测试(可靠性测试、疲劳强度测试)、配置测试、失败测试等性能测试性能测试(PerformanceTesting):通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能的需要。说明:......
  • JMeter01 - 性能测试初识
    性能测试初识软件测试分类按照测试内容分类功能测试:业务流程是否正常实现性能测试:关注各种性能指标是否符合设计预期负载测试、压力测试、性能测试、大数据量测试、可靠性测试等安全测试:由网络安全工程师参与,比如模拟各种“注入”其他:易用性测试、安装测试、恢复测试、......