本机环境:

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即可。

验证步骤:

  1. 编写Murphi语言程序,命名如pingpong.m
  2. 运行Murphi编译器,将pingpong.m编译成pingpong.c(c++)
  3. 运行C++编译器,将pingpong.c进行编译
  4. 运行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下相关推荐

  1. Ubuntu 10.10安装配置指南Ubuntu 11.10 图形安装教程

    Ubuntu 11.10 (Oneiric Ocelot )图形(图解)安装教程.基本设置.网络设置.软件源.语言与输入法.硬件驱动.Unity.Gnome3.Ubuntu文档.制作USB Live. ...

  2. RHEL下安装配置基于2台服务器的MYSQL集群

    一.介绍 ======== 这篇文档旨在介绍如何在RHEL下安装配置基于2台服务器的MySQL集群.并且实现任意一台服务器出现问题或宕机时MySQL依然能够继续运行. 注意! 虽然这是基于2台服务器的 ...

  3. 2台mysql集群_如何安装配置基于2台服务器的MySQL集群

    这篇文章旨在介绍如何安装配置基于2台服务器的MySQL集群.并且实现任意一台服务器出现问题或宕机时MySQL依然能够继续运行. 注意!虽然这是基于2台服务器的MySQL集群,但也必须有额外的第三台服务 ...

  4. 海洋cms新手入门安装配置教程

    在安装本系统前,请先确认您的服务器环境是否符合海洋cms环境要求: Windows 平台: IIS/Apache/Nginx + PHP(5.x) + MySQL(5.x) Linux/Unix 平台 ...

  5. ubuntu nginx安装php mysql,ubuntu下配置nginx+php+mysql详解

    1.更新 复制代码 代码如下: sudo apt-get update 2.安装nginx 复制代码 代码如下: sudo apt-get intsall nginx Ubuntu安装之后的文件结构大 ...

  6. Linux安装配置类似mac下的docky

    百度经验:ubuntu安装配置类似mac下的docky 亲手打造自己的Linux桌面环境:http://os.51cto.com/art/201510/493896_all.htm Dock是一种图形 ...

  7. 深度学习环境配置10——Ubuntu下的torch==1.7.1环境配置

    深度学习环境配置10--Ubuntu下的torch==1.7.1环境配置 注意事项 一.2022/9/18更新 学习前言 各个版本pytorch的配置教程 环境内容 环境配置 一.Anaconda安装 ...

  8. Ubuntu 22.04 LTS 入门安装配置优化、开发软件安装一条龙

    例行前言   最近在抉择手上空余的笔记本(X220 i7-2620M,Sk Hynix ddr3 8G*2 ,Samsung MINISATA 256G)拿来运行什么系统比较好,早年间我或许还会去继续 ...

  9. Tomcat7安装配置 for Ubuntu

    第一个网址用Google打开. http://www.myexception.cn/linux-unix/1944653.html http://lucene.apache.org/solr/quic ...

最新文章

  1. redhat下安装mysql 5.6.20,解压zip包,查看已经安装过的mysql,卸载rpm安装包,安装mysql服务器端和客户端,修改mysql用户名,登陆mysql,启动关闭mysql
  2. Oracle错误代码:ORA-28002导致密码消失
  3. 记录java应用部署到k8s中
  4. 业务订单号生成算法,每秒50W左右,不同机器保证不重复,包含日期可读性好...
  5. jQuery笔记[1]——jqGrid中实现自定义链接弹出subgrid
  6. HDU 4028 The time of a day STL 模拟题
  7. NAS新突破,仅需半个 GPU day 即可训练出高性能架构!阿里提出 Zen-NAS
  8. MySQL05:DCL语言、视图
  9. 【网络爬虫入门01】应用Requests和BeautifulSoup联手打造的第一条网络爬虫
  10. Monkey King
  11. 【干货分享】大话团队的GIT分支策略进化史
  12. 数学模型——数学与人类文明的桥梁
  13. java毕业设计针织企业外包系统Mybatis+系统+数据库+调试部署
  14. 三维动画在计算机上的应用,三维动画运用领域有哪些地方?
  15. 防火墙iptables和firewall相关操作
  16. Hexo搭建个人博客(十五)| 酒香也怕巷子深,让百度收录你的站点
  17. 第四次作业—四则运算
  18. 1.IEC 62056-21 E模式通信
  19. 【笔记】ARM架构和ARM芯片(三)
  20. Arena仿真-基于超市排队的建模分析

热门文章

  1. LeetCode——1636.按照频率将数组升序排序
  2. (1)互联网普及与城乡收入差距(2002-2016年)(2)泰尔指数和城乡收入差距(原始数据+测算)(1990-2021年)(3)数字普惠金融对城乡收入差距的异质性影响研究(2011-2020年)
  3. utf-8 to unicode
  4. colorbox学习
  5. 开发疣猪飞行摇杆A10C(第二章)
  6. php数组的定义和输出方式总结
  7. 【Java】Java易丢失的基础知识一
  8. java退出程序语句是_结束程序的快捷键
  9. 【零散知识点总结4】
  10. 远程终端 android,基于Android的远程家电控制终端设计