CMurphi或Murphi入门——安装配置基于ubuntu下
本机环境:
Kali linux(
环境不影响安装步骤严重打脸失败了)
(ubuntu linux成功演示pingpong.m)
安装步骤
- 下载
- 地址1(推荐)
- 地址2()
- 上传资源分享
- 在src下make
- "make" or "make mu"
- # --> compile mu
--------------------------------------------------------------------------------------------------------------------------------------------------------
之前的操作都是在kali下,现在开始基于ubuntu下。
先来linux操作系统下VMtools的安装方便导文件
解压完之后右击有在终端打开,省得输路径
注意:
如果将murphi整个文件夹复制到新的系统中,可能会编译不成功。这是由于src下make这一步在不同环境中(平台)有不同操作。所以这时候就需要到src中重新make一下。
如果重新make不行,则重新下载新的murphi,重新make即可。
验证步骤:
- 编写Murphi语言程序,命名如pingpong.m
- 运行Murphi编译器,将pingpong.m编译成pingpong.c(c++)
- 运行C++编译器,将pingpong.c进行编译
- 运行pingpong.out来运行模拟/验证过程
- 没有make文件的,需要按照上面的步骤,进行m - c - o的生成
在src目录下:
直接make(example中ex/toy中的例子pingpong.m拷到src下,就可以
1.../src/mu pingpong.m =>生成cpp
gunther@ubuntu:~/cmurphi5.4/src$ ./mu pingpong.m
2.
gunther@ubuntu:~/cmurphi5.4/src$ g++ -ggdb -o pingpong.o pingpong.cpp -I ../include -lm
(反正你试试不是../include就是../../include)
../include 是inclue的路径,比如ex下目录是../include 然后其它的比如ex/toy下就要../../include了3.
gunther@ubuntu:~/cmurphi5.4/src$ ./pingpong.o
演示结果:
This program should be regarded as a DEBUGGING aid, not as a
certifier of correctness.
Call with the -l flag or read the license file for terms
and conditions of use.
Run this program with "-h" for the list of options.Bugs, questions, and comments should be directed to
"melatti@di.uniroma1.it".CMurphi compiler last modified date: Nov 14 2017
Include files last modified date: Sep 01 2009
====================================================================================================================================================
Caching Murphi Release 5.4
Finite-state Concurrent System Verifier.Caching Murphi Release 5.4 is based on various versions of Murphi.
Caching Murphi Release 5.4 :
Copyright (C) 2009-2012 by Sapienza University of Rome.
Murphi release 3.1 :
Copyright (C) 1992 - 1999 by the Board of Trustees of
Leland Stanford Junior University.==========================================================================Protocol: pingpongAlgorithm:Verification by breadth first search.with symmetry algorithm 3 -- Heuristic Small Memory Normalizationwith permutation trial limit 10.Memory usage:* The size of each state is 32 bits (rounded up to 8 bytes).* The memory allocated for the hash table and state queue is8 Mbytes.With two words of overhead per state, the maximum size ofthe state space is 476219 states.* Use option "-k" or "-m" to increase this, if necessary.* Capacity in queue for breadth-first search: 47621 states.* Change the constant gPercentActiveStates in mu_prolog.incto increase this, if necessary.Warning: No trace will not be printed in the case of protocol errors!Check the options if you want to have error traces.==========================================================================Status:No error found.State Space Explored:4 states, 6 rules fired in 0.10s.
在进一步演示:
gunther@ubuntu:~/cmurphi5.4/src$ ./pingpong.o -p
This program should be regarded as a DEBUGGING aid, not as a
certifier of correctness.
Call with the -l flag or read the license file for terms
and conditions of use.
Run this program with "-h" for the list of options.Bugs, questions, and comments should be directed to
"melatti@di.uniroma1.it".CMurphi compiler last modified date: Nov 14 2017
Include files last modified date: Sep 01 2009
====================================================================================================================================================
Caching Murphi Release 5.4
Finite-state Concurrent System Verifier.Caching Murphi Release 5.4 is based on various versions of Murphi.
Caching Murphi Release 5.4 :
Copyright (C) 2009-2012 by Sapienza University of Rome.
Murphi release 3.1 :
Copyright (C) 1992 - 1999 by the Board of Trustees of
Leland Stanford Junior University.==========================================================================Protocol: pingpongAlgorithm:Verification by breadth first search.with symmetry algorithm 3 -- Heuristic Small Memory Normalizationwith permutation trial limit 10.Memory usage:* The size of each state is 32 bits (rounded up to 8 bytes).* The memory allocated for the hash table and state queue is8 Mbytes.With two words of overhead per state, the maximum size ofthe state space is 476219 states.* Use option "-k" or "-m" to increase this, if necessary.* Capacity in queue for breadth-first search: 47621 states.* Change the constant gPercentActiveStates in mu_prolog.incto increase this, if necessary.Warning: No trace will not be printed in the case of protocol errors!Check the options if you want to have error traces.==========================================================================
Verbose option selected. The following is the detailed progress.Firing startstate Startstate 0, p:0
Obtained state:
Players[0].hasball:true
Players[0].gotball:false
Players[1].hasball:false
Players[1].gotball:falseFiring startstate Startstate 0, p:1
Obtained state:
Players[0].hasball:false
Players[0].gotball:false
Players[1].hasball:true
Players[1].gotball:false------------------------------
Unpacking state from queue:
Players[0].hasball:true
Players[0].gotball:false
Players[1].hasball:false
Players[1].gotball:falseThe following next states are obtained:Firing rule Pass ball, p:0
Obtained state:
Players[0].hasball:false
Players[0].gotball:false
Players[1].hasball:false
Players[1].gotball:trueFiring rule Keep ball, p:0
Obtained state:
Players[0].hasball:true
Players[0].gotball:false
Players[1].hasball:false
Players[1].gotball:false------------------------------
Unpacking state from queue:
Players[0].hasball:false
Players[0].gotball:false
Players[1].hasball:true
Players[1].gotball:falseThe following next states are obtained:Firing rule Pass ball, p:1
Obtained state:
Players[0].hasball:false
Players[0].gotball:true
Players[1].hasball:false
Players[1].gotball:falseFiring rule Keep ball, p:1
Obtained state:
Players[0].hasball:false
Players[0].gotball:false
Players[1].hasball:true
Players[1].gotball:false------------------------------
Unpacking state from queue:
Players[0].hasball:false
Players[0].gotball:false
Players[1].hasball:false
Players[1].gotball:trueThe following next states are obtained:Firing rule Get ball, p:1
Obtained state:
Players[0].hasball:false
Players[0].gotball:false
Players[1].hasball:true
Players[1].gotball:false------------------------------
Unpacking state from queue:
Players[0].hasball:false
Players[0].gotball:true
Players[1].hasball:false
Players[1].gotball:falseThe following next states are obtained:Firing rule Get ball, p:0
Obtained state:
Players[0].hasball:true
Players[0].gotball:false
Players[1].hasball:false
Players[1].gotball:false==========================================================================Status:No error found.State Space Explored:4 states, 6 rules fired in 0.10s.
CMurphi或Murphi入门——安装配置基于ubuntu下相关推荐
- Ubuntu 10.10安装配置指南Ubuntu 11.10 图形安装教程
Ubuntu 11.10 (Oneiric Ocelot )图形(图解)安装教程.基本设置.网络设置.软件源.语言与输入法.硬件驱动.Unity.Gnome3.Ubuntu文档.制作USB Live. ...
- RHEL下安装配置基于2台服务器的MYSQL集群
一.介绍 ======== 这篇文档旨在介绍如何在RHEL下安装配置基于2台服务器的MySQL集群.并且实现任意一台服务器出现问题或宕机时MySQL依然能够继续运行. 注意! 虽然这是基于2台服务器的 ...
- 2台mysql集群_如何安装配置基于2台服务器的MySQL集群
这篇文章旨在介绍如何安装配置基于2台服务器的MySQL集群.并且实现任意一台服务器出现问题或宕机时MySQL依然能够继续运行. 注意!虽然这是基于2台服务器的MySQL集群,但也必须有额外的第三台服务 ...
- 海洋cms新手入门安装配置教程
在安装本系统前,请先确认您的服务器环境是否符合海洋cms环境要求: Windows 平台: IIS/Apache/Nginx + PHP(5.x) + MySQL(5.x) Linux/Unix 平台 ...
- ubuntu nginx安装php mysql,ubuntu下配置nginx+php+mysql详解
1.更新 复制代码 代码如下: sudo apt-get update 2.安装nginx 复制代码 代码如下: sudo apt-get intsall nginx Ubuntu安装之后的文件结构大 ...
- Linux安装配置类似mac下的docky
百度经验:ubuntu安装配置类似mac下的docky 亲手打造自己的Linux桌面环境:http://os.51cto.com/art/201510/493896_all.htm Dock是一种图形 ...
- 深度学习环境配置10——Ubuntu下的torch==1.7.1环境配置
深度学习环境配置10--Ubuntu下的torch==1.7.1环境配置 注意事项 一.2022/9/18更新 学习前言 各个版本pytorch的配置教程 环境内容 环境配置 一.Anaconda安装 ...
- Ubuntu 22.04 LTS 入门安装配置优化、开发软件安装一条龙
例行前言 最近在抉择手上空余的笔记本(X220 i7-2620M,Sk Hynix ddr3 8G*2 ,Samsung MINISATA 256G)拿来运行什么系统比较好,早年间我或许还会去继续 ...
- Tomcat7安装配置 for Ubuntu
第一个网址用Google打开. http://www.myexception.cn/linux-unix/1944653.html http://lucene.apache.org/solr/quic ...
最新文章
- redhat下安装mysql 5.6.20,解压zip包,查看已经安装过的mysql,卸载rpm安装包,安装mysql服务器端和客户端,修改mysql用户名,登陆mysql,启动关闭mysql
- Oracle错误代码:ORA-28002导致密码消失
- 记录java应用部署到k8s中
- 业务订单号生成算法,每秒50W左右,不同机器保证不重复,包含日期可读性好...
- jQuery笔记[1]——jqGrid中实现自定义链接弹出subgrid
- HDU 4028 The time of a day STL 模拟题
- NAS新突破,仅需半个 GPU day 即可训练出高性能架构!阿里提出 Zen-NAS
- MySQL05:DCL语言、视图
- 【网络爬虫入门01】应用Requests和BeautifulSoup联手打造的第一条网络爬虫
- Monkey King
- 【干货分享】大话团队的GIT分支策略进化史
- 数学模型——数学与人类文明的桥梁
- java毕业设计针织企业外包系统Mybatis+系统+数据库+调试部署
- 三维动画在计算机上的应用,三维动画运用领域有哪些地方?
- 防火墙iptables和firewall相关操作
- Hexo搭建个人博客(十五)| 酒香也怕巷子深,让百度收录你的站点
- 第四次作业—四则运算
- 1.IEC 62056-21 E模式通信
- 【笔记】ARM架构和ARM芯片(三)
- Arena仿真-基于超市排队的建模分析