Dynamite Alloy Analyzer+PVS in the Analysis and Verification of Alloy Specifications

合集下载

二氧化铅电极的晶体结构对放电容量的影响

二氧化铅电极的晶体结构对放电容量的影响

第17卷第1期应用化学Vol.17No.12000年2月CH IN ESE JOU RNA L O F APPL I ED CHEM IST RY Feb.2000二氧化铅电极的晶体结构对放电容量的影响黄成德*张昊朱松然(天津大学化工学院天津300072)摘要采用铅镉合金镀层经处理制备活性二氧化铅电极,利用T EM、XRD、XPS等方法研究了二氧化铅电极表层晶体结构,证实了无定形相的存在,实验结果表明,铅镉合金中铅含量越低,所形成的活性二氧化铅结晶度越大,电极的放电容量也越高.关键词铅酸蓄电池,二氧化铅电极,晶体结构,放电容量分类号:O646,T M912.1铅酸蓄电池正极活性物质)))二氧化铅晶型结构与电化学活性的关系历来受人瞩目. 1959年人们已开始研究氧空位及OH-基团的关系[1],而后许多学者又转向研究氢含量与活性的关系[2],1992年Pavlov[3]提出二氧化铅活性物质为具有质子和电子传输功能的凝胶-晶体体系的概念.但二氧化铅内在结构极为复杂,而现有的理论观点又仅仅停留于用传统电池工艺制备二氧化铅结构上,虽然对其内在特点进行了很多探讨,但均系针对二氧化铅整体颗粒.本文采用与传统电池工艺不同的方法制备了薄层活性二氧化铅,运用TEM、XRD、XPS等测试方法,对其二氧化铅表层的结构特性进行了剖析,并探讨了二氧化铅结构与活性的关系.1实验部分活性二氧化铅的制备:采用电沉积工艺,在铅锑合金板栅(8cm2)上镀覆铅镉合金.将铅镉合金放入硫酸(1110g/cm3)溶液中,以铅电极为阴极恒流通电,溶出镉后继续通电,直至阴阳极之间的电压差为215~216V时,可认为电极中的金属铅已氧化为二氧化铅,阳极氧化电流密度:6125@10-3mA/m2.电沉积之前,对铅锑合金板栅按一般电镀前处理规范进行.电沉积工艺条件:氨基磺酸铅:30g/L,氨基磺酸镉:60g/L,游离氨基磺酸:50g/L,二十一烷基酚聚氧乙烯醚:110g/L,t:25e,i:410A/dm2.二氧化铅电极容量测试:实验在自制电解池中进行,恒流放电,普通涂膏式负极为对电极,极间距117cm,室温测试,放电终止电压:1175V,电解液:H2SO4(1128g/cm3).我们制备的该电极厚度为10~20L m.利用日本产H ITACH I H-700型透射电子显微镜对活性二氧化铅进行电子衍射分析.试样制备:将活性二氧化铅电极在5%醋酸溶液中快速洗涤,使二氧化铅层溶出,再将其放入乙醇溶液中用超声波分散,载于铜网之上进行测试.采用日本D/max-C B型X射线衍射仪分析活性二氧化铅电极晶体结构的变化.Cu K A射线,石墨单色器,测试电压为30kV,电流为0103 A.X射线光电子能谱测试在美国产PERKIN ELM ER PEI5300ESCA System上进行.样品室真空度为10-8~10-9Pa,操作电压:13kV,Mg K A射线,X射线功率为250W.2结果与讨论在实验中,我们曾采用纯铅电极直接制备二氧化铅的方法,但得到的二氧化铅,大多为浮1999-07-14收稿,1999-11-08修回在电极上的小颗粒,且易脱落,若使极板容量提高,需长时间反复改变电流方向,我们用铅镉合金制备二氧化铅的研究思路较为新颖,并且由EDRX 谱测定结果证明Cd 溶出后的电极在电子探针允许的误差范围内无Cd 元素谱峰出现,因此,认为Cd 是100%溶出.2.1 无定形二氧化铅的确定从活性二氧化铅电极的电子衍射照片(图略)可见:除了二氧化铅的晶格衍射点之外,还出现了微弱的衍射环现象.说明活性二氧化铅电极中含有一定量的无定形物质.同时由图中晶Fig.1 X -r ay diffraction of lead diox ide electrode格衍射点非单一化排列的现象可以看出,该二氧化铅晶态结构中含有不同取向的二氧化铅.图1为活性二氧化铅电极的XRD 图谱.除了在2514b ,32b ,4911b 处分别出现B -PbO 2的(110),(101),(211)三族特征晶面之外,在这三组强衍射峰的背景处还出现了漫散射峰(虚线所示).在衍射图谱中均产生1个或数个漫散的衍射环.因而图1的衍射环足以表明无定形物质的存在,进一步说明了活性二氧化铅中有无定形类的物质存在.2.2 二氧化铅的表面活性物质为确定电极表面无定形二氧化铅的存在形式,曾对首次阳极氧化后的二氧化铅电极进行测试.但由于首次阳极氧化后的电极是PbO 2/PbSO 4/Pb 状态,其中Pb )O,S )O 特征峰重叠在一起,无法从中确定二氧化铅的表面结构.经20次充放电循环后的二氧化铅电极,硫酸铅F ig.2 XPS of lead -dio xide electrode after 20cycles for a .lead,b .o xyg en含量大大减少,经XPS 测试的结果见图2.图2(a )为二氧化铅中铅的XPS 谱图.由于Pb 4f 5/2与Pb 4f 7/2特征峰成对出现,因此只以低结合能的Pb 4f 7/2为分析对象.图中显示活性二氧化铅中Pb 4f 7/2结合能为13713eV,与标准值13714eV 在误差范围内(012eV)相吻合,因而可确定二氧化铅中铅的存在状态无变化.图2(b )为二氧化铅中氧的XPS 谱图.低结合能处出现52819eV 的特征峰,根据二氧化铅中Pb )O 结合能标准值(52910eV)可以断定,此峰对应于二氧化铅中Pb )O 峰.高结合能处峰形较为弥散,很可能是由几个峰重叠所致.Pavlov [3]曾提出普通铅酸蓄电池正极二氧化铅表层的无定形二氧化铅组成为Pb )OH ,其)OH 基团可在XPS 测试氧特征峰中分辨出.从图2(b )可见,样品中氧的特征峰极为复杂,并没有出现特征较为明显的O )H 峰.采用计算机模拟方法,以Pb )O,O )H,S )O 峰位置为依据(其特征峰结合能分别为52817、53012、53118eV),其拟合图与实验曲线吻合较好,其中32应用化学 第17卷Pb )O,O )H ,S )O 峰面积比值分别为39107%,29151%,31142%,O )H 峰的面积比值与文献[3]测试结果一致.因此,可以认为无定形二氧化铅有吸附)OH 基团形成Pb )OH 的能力.表1列出二氧化铅电极Pb ØO 原子比定量分析数据.结果表明:电极中的二氧化铅为非化学计量数,其中表面氧含量(119446Ø1)比按化学计量数(2Ø1)预计的少,可以断定电极表面的二氧化铅存在晶格氧空穴.同时由Pb ØO 原子数比值看出:在计算二氧化铅的非化学计量数时,含与不含O )H 峰差异很大,即电极表面状态对晶体中的氧含量比值起着很大作用.Tab.1 Analysis of lead dioxide electrode ElementAtomic fracti on/%Atomic proportion of lead to oxygen Containing O )H Uncontaini ng O )H Containing O )H Uncontaining O )H O 1s66.0452.551Ø1.94461Ø1.1076Pb 4f 33.9647.442.3 无定形二氧化铅与电极活性的关系由于本文的二氧化铅电极是通过铅镉合金阳极氧化而形成,故合金电极中铅含量大小将影响到二氧化铅电极中无定形物质的含量,进而影响电极的性能.本文测试了铅含量分别为38175%,19114%,9105%的合金电极阳极氧化后形成二氧化铅电极的XRD 谱图,并采用晶型二氧化铅峰高与非晶型二氧化铅峰高比值来表征各样品中无定形二氧化铅的相对含量[4](见表2).表2结果表明,随着合金电极中铅含量的降低其充电态二氧化铅电极的衍射峰高度随之增强,而无定形二氧化铅的峰高虽有变化,但其变化趋势不甚明显.使合金电极中铅含量降低,其二氧化铅结晶性增大,无定形二氧化铅的相对含量随之减小.这种现象是由于合金电极金属含量的不同,造成其界面缺陷度的差异,使得阳极氧化后的二氧化铅缺陷数目有所不同,表现出其结晶性随铅含量降低而增大.Tab.2 C rystallinity and crystal plane parameters of lead dioxideX (Pb)/%Crystal face (110)(101)(211)Noncrystalline Crystallinity 38.75d /nm35.2828.0718.60 3.162H /(b )25.2231.8648.94Diffraction peak /cm -11097123877039219.14d /nm35.1527.9618.55 5.012H /(b )25.3231.9849.06Diffractioni peak/cm -12763340822926809.05d /nm35.1728.0018.589.992H /(b )25.3031.9449.00Diffractioni peak/cm -1443155133235552 图3为合金电极金属含量与放电容量的测试曲线.图中的横坐标为二氧化铅电极的活性物质利用率,为二氧化铅电极放出的实际容量与理论容量之比.理论容量是假设活性物质,全部参加电极的成流反应所给出的电量,它是根据活性物质的质量按照法拉第定律计算求得.以活性物质利用率的高低更能确切地表明电极放电活性的高低.本文采用含铅量不同的电极,在同一标准下比较其电极活性,由图中可以看出合金中铅含量越低,其活性物质利用率越高.由上述结果认为,二氧化铅电极的结晶性越大,其活性物质利用率越高,可以说:无定形二氧化铅对电极的初始电化学活性并非有利.Ruetschi [5]认为二氧化铅的非化学计量数是由二氧化铅晶体中的空穴缺陷引起的子晶格紊乱所造成.这种缺陷引起颗粒间电子传输受阻,影响了二氧化铅晶体整体电化学活性.33第1期黄成德等:二氧化铅电极的晶体结构对放电容量的影响Fig.3 Relation betw een metal content ofalloy elect rode and discharg e capacity oflead diox ide electrode Pavlov [6]认为,在铅酸蓄电池中,二氧化铅存在水化的无定形相,其质子和电子放电机理为:PbO(OH)2+2H ++2e -Pb(OH )2+H 2O Pb(OH)2+H 2SO 4PbSO 4+2H 2O即等量的电子和质子H +分别从板栅和体相溶液中进入二氧化铅(包括未水化的晶体Pb O Pb O 及水化的无定形相OH )Pb )O )Pb )OH),故二氧化铅电极的反应速率以及电化学活性受控于电子和质子在其中的输送.当二氧化铅的无定形相增多时,其晶体的完整度降低.同时无定形相水化后将成为具有类似高分子链性质的链接.由于高分子链的长度有限,以至于不能连接各个晶体,且链间距对导电性也有影响.而二氧化铅电极放电反应所需的电子是由板栅进入二氧化铅,再经过二氧化铅晶体之间的传递到达表面反应区.活性二氧化铅的无定形相越多,则水化程度越高,电极表层的导电性越差,电子在晶格之间的传递将严重受阻,导致电极的电化学活性降低,故电极放出的容量就越小.参 考 文 献1 Anderson J S,Stern M.I nor g N ucl Chem ,1959,11:2722 Caulder S M ,Simon A C.J Electrochem Soc ,1973,120:23943 Pavlov D.J Electr ochem Soc ,1992,139(11):30754 黄成德(HU AN G Cheng -De).[博士学位论文](Doctor al Dissertation).天津(T ianjin):天津大学(T ianjin U niversity),19965 Ruetschi P.J Electrochem Soc ,1992,139(5):13476 Pavlov D,Balkanov I.J Electrochem Soc ,1992,139(7):1830Effect of Crystal Structure of PbO 2Electrodeon Its Discharge CapacityH UANG Cheng -De *,ZHANG H ao,ZHU Song -Ran(School of Chemical Engineering and Technology ,Tianj in Univer sity ,Tianj in 300072)Abstract An active PbO 2electrode w as prepared from Pb -Cd alloy.The existence of amorphous phase in the electrode surface has been confirmed by TEM ,XRD and XPS.The results show ed that the lower the content of Pb in alloy,the higher the crystallinity of the active PbO 2and the discharg e capacity of the electrode.Keywords lead acid battery,PbO 2electrode,crystal structure,discharge capacity 34应用化学 第17卷。

一、元素分析仪(EA)之原理与分析范围[资料]

一、元素分析仪(EA)之原理与分析范围[资料]

大同大學尖端技術研究中心貴儀實驗室非金屬元素分析儀非金屬元素分析儀(Elemental Analyzer)儀器設備說明:1.德國Heraeus Vario EL Ⅲ型元素分析儀包括樣品自動供給器、電腦資料處理機2.METTLER TOLEDO UMX2 Balances(Max =2.1g, d=0.1μg)3. 華碩電腦、Kyocera雷射印表機元素分析儀(EA)之原理與分析範圍:利用高溫燃燒的方式檢測N 、C、H 、S 、O的含量。

樣品在燃燒管1150℃燃燒後, He氣將燃燒後的氣態產物經由還原管, NOx 被還原成N2 ,其他產物CO2、H2O、SO2進入各吸附管,分別被不同的吸附管吸附,N2直接由He氣帶入TCD detector 檢測含量,吸附管依序加溫脫附CO2、H2O、SO2再分別進入TCD detector檢測個別成分含量。

信號經處理後定量運算,即可自動分別列計各成分之重量百分比。

氧之定量分析則利用石墨與樣品混合,在約1100 ℃時將氧完全轉換生成一氧化碳,再利用非分散性紅外線光度計(ND - IR)測定一氧化碳之濃度,換算後以測量氧重量百分比。

有效測量範圍(絕對量) C: 0.03 ~ 20mgH: 0.03 ~ 3mgN: 0.03 ~ 2mgS : 0.03 ~ 6mg操作流程→→↓←↓↓→本中心EA服務項目:定量分析無爆炸性之各種固態或液態之純質有機化合物中氮、碳、氫、硫、氧之重量百分比。

送樣之注意事項:1請先純化、去除水份及溶劑,封瓶送測。

空氣敏感等不安定性樣品,請約定送樣時間。

2.樣品一次送量固體至少15mg以上,液體2ml以上。

3.固體樣品請儘量磨細。

4.含鹵素之樣品或難燃性之樣品請務必標明。

含F及完全unknow之樣品請勿送測。

6.測O,只限有機氧之樣品。

7.申請表上, 請儘量提供有關送測樣品的資料,如需特別處理,亦請詳細註明。

收費辦法:1.一般性樣品:NCH $800元/件,含S 樣品每件外加800元,含O 樣品每件外加800元。

ATOMI射频氦等离子体原子发射光谱用于毛细管气相色谱检测(英文)

ATOMI射频氦等离子体原子发射光谱用于毛细管气相色谱检测(英文)

ATOMI射频氦等离子体原子发射光谱用于毛细管气相色谱检测(英文)MAEDA T;NAKAGAMA T;MORITA T;UCHIYAMA K;HOBO T【期刊名称】《环境化学》【年(卷),期】2003(22)3【摘要】There is much different type of selective detectors for GC but emission spectroscopic detectors are few.We developed the radio frequency helium glow discharge plasma detector for capillary GC.It attached polychrometor to detect full spectrum simultaneously and achieved sensitive,selective detection ability for various compounds as a novel element selective detector.The application of this system will be reported.【总页数】3页(P275-277)【关键词】射频氦等离子体;原子发射光谱;毛细管气相色谱;检测【作者】MAEDA T;NAKAGAMA T;MORITA T;UCHIYAMA K;HOBO T【作者单位】国立产业技术综合研究所有机分析科,日本筑波305-8563;东京都立大学大学院,日本东京192-0397【正文语种】中文【中图分类】O657.31;O657.71【相关文献】1.等离子体原子发射光谱检测器在气相色谱中的应用进展 [J], 赵贵喜;梁冰;杨永坛2.用于气相色谱的微波等离子体原子发射光谱检测器的发展 [J], 袁懋;师宇华;于爱民;张寒琦;金钦汉3.气相色谱微波诱导等离子体原子发射光谱检测器对C,P,Si,Sn,B和I元素的响应特性的研究 [J], 师宇华;郑健;杨任飞;于爱民4.气相色谱用微波等离子体炬原子发射光谱检测器的Cl,Br,I响应特性的研究 [J], 师宇华;彭增辉;杨文军;曹延波;于爱民;金钦汉5.常压氦微波等离子体发射光谱作气相色谱元素选择性检测器系统的评价 [J], 曾克慰;贾莉;俞惟乐因版权原因,仅展示原文概要,查看原文内容请购买。

一种基于粒子群算法的高聚物浆液参数识别方法[发明专利]

一种基于粒子群算法的高聚物浆液参数识别方法[发明专利]

专利名称:一种基于粒子群算法的高聚物浆液参数识别方法专利类型:发明专利
发明人:李晓龙,姚文艺,贾赫扬,钟燕辉,张蓓,申震洲,李阳
申请号:CN202010855134.7
申请日:20200824
公开号:CN112017733A
公开日:
20201201
专利内容由知识产权出版社提供
摘要:本发明涉及化学注浆领域,涉及一种基于粒子群算法的高聚物浆液参数识别方法,包括:预处理;初始化每个粒子的速度、位置、适应值、个体历史最优适应值、个体历史最优位置、群体历史最优适应值、群体历史最优位置和当前迭代次数;粒子群算法迭代求解;判断是否执行了预定次数的运算或群体历史最优适应值是否达到了精度要求;识别得到化学反应动力学参数。

本发明通过利用粒子群算法从而可快速高效地识别高聚物浆液化学反应动力学参数,且得到的参数更为准确。

申请人:郑州大学
地址:450001 河南省郑州市高新技术开发区科学大道100号
国籍:CN
代理机构:长沙楚为知识产权代理事务所(普通合伙)
代理人:李大为
更多信息请下载全文后查看。

镍-钛合金弹性模量的测定

镍-钛合金弹性模量的测定

镍-钛合金弹性模量的测定
张蓓;赵雪丹;吴平;王建国;宋西平
【期刊名称】《理化检验-物理分册》
【年(卷),期】2007(043)009
【摘要】采用静态拉伸法和纳米压入法对具有伪弹性行为的镍-钛合金的弹性模量进行了研究.结果表明,镍-钛合金的弹性模量随其相组成的变化而变化,母相状态时的弹性模量为24.5 GPa,而马氏体相状态时的弹性模量为11.6 GPa.多次重复拉伸使其弹性模量降低并呈现非线性的变化趋势.纳米压入法测量镍-钛合金的弹性模量同拉伸法测量结果有较大的偏差,其原因同纳米压入法未考虑伪弹性变形行为有关.【总页数】3页(P437-438,443)
【作者】张蓓;赵雪丹;吴平;王建国;宋西平
【作者单位】北京科技大学,应用学院,物理系,北京,100083;北京科技大学,应用学院,物理系,北京,100083;北京科技大学,应用学院,物理系,北京,100083;北京科技大学,新金属材料国家重点实验室,北京,100083;北京科技大学,新金属材料国家重点实验室,北京,100083
【正文语种】中文
【中图分类】O313;TB302
【相关文献】
1.原子吸收光谱法测定TG6钛合金中痕量镍 [J], 任慧;杨军红
2.电感耦合等离子体原子发射光谱法测定铝锰钛合金中锰钛铜锌镍 [J], 张彬
3.钯镍钛合金中镍量的快速测定 [J], 段颖;金娅秋;陈登权
4.原子吸收光谱法测定TG6钛合金中痕量镍不确定度的分析 [J], 任慧
5.镍篮法钛合金中氧的测定 [J], 李鸿升
因版权原因,仅展示原文概要,查看原文内容请购买。

压铸铝合金阳极氧化膜厚检测位置

压铸铝合金阳极氧化膜厚检测位置

压铸铝合金阳极氧化膜厚检测位置英文回答:Anodized Coating Thickness Measurement for Die-cast Aluminum Alloys.Introduction:Anodized coatings on die-cast aluminum alloys enhance corrosion resistance, improve wear properties, and provide a decorative finish. The thickness of the anodized coating is crucial for ensuring its performance and durability. Accurate measurement of the coating thickness is necessary for quality control and performance evaluation.Measurement Methods:Several methods are commonly used to measure the thickness of anodized coatings on die-cast aluminum alloys:Eddy Current Method: This non-destructive method utilizes an eddy current probe to induce eddy currents in the coating. The thickness can be determined by measuring the changes in impedance or phase angle of the eddy currents.Coulometric Method: This destructive method involves an electrochemical process where the coating is dissolved, and the amount of charge passed is proportional to the coating thickness.Microscopic Method: Cross-sectioning the coated sample and examining it under a microscope can provide a direct measurement of the coating thickness.Measurement Locations:For die-cast aluminum alloys, the thickness of the anodized coating should be measured in representative locations that reflect the overall coating quality. The following considerations are important:Flat Surfaces: Measure the coating thickness on flat areas to obtain an accurate average thickness.Complex Geometries: Measure the coating thickness on areas with varying geometries to ensure uniform coating coverage.Corners and Edges: Avoid measuring the coating thickness on sharp corners or edges where the coating may be thinner.Critical Areas: Prioritize measuring the coating thickness in areas subject to high stress or wear.Multiple Measurements: Take multiple measurements in different locations to obtain a reliable average thickness.Standards and Specifications:Specific standards and specifications may dictate the requirements for anodized coating thickness measurement on die-cast aluminum alloys. These standards provideguidelines on measurement methods, locations, and acceptance criteria. It is essential to adhere to these standards to ensure consistency and accuracy.Conclusion:Accurate measurement of the anodized coating thickness on die-cast aluminum alloys is critical for assessing coating performance and quality. By utilizing appropriate measurement methods and following best practices for selecting representative locations, manufacturers can ensure reliable and consistent results that meet industry standards.中文回答:压铸铝合金阳极氧化膜厚检测位置。

常用材料分析方法中英文对照

常用材料分析方法中英文对照

1. Elemental Analysis 元素分析Atomic absorption spectroscopy 原子吸收光谱Auger electron spectroscopy (AES) 俄歇电子能谱Electron probe microanalysis (EPMA) 电子探针微分析Electron spectroscopy for chemical analysis (ESCA) 化学分析电子能谱Energy dispersive spectroscopy (EDS) 能量色散谱Flame photometry 火焰光度法Wavelength dispersive spectroscopy (WDS)X-ray fluorescence X射线荧光2. Molecular and Solid State Analysis 分子与固态分析Chromatography [gas chromatography (GC), size exclusion chromatography (SEC)]色谱[气相色谱,体积排除色谱]Electron diffraction 电子衍射Electron microscopy [scanning electron microscopy (SEM),transmission electron microscopy (TEM),scanning TEM (STEM)] 电子显微镜Electron spin resonance (ESR) 电子自旋共振Infrared spectroscopy (IR) 红外光谱Mass spectrometry 质谱Mercury porosimetry 压汞法Mossbauer spectroscopy 穆斯堡尔谱Nuclear magnetic resonance (NMR) 核磁共振Neutron diffraction 中子衍射Optical microscopy 光学显微镜Optical rotatory dispersion (ORD) 旋光色散Raman spectroscopy 拉曼光谱Rutherford back scattering (RBS) 卢瑟福背散射Small angle x-ray scattering (SAXS) 小角X射线散射Thermal analysis [differential scanning calorimetry (DSC),thermal gravimetric analysis (TGA),differential thermal analysis (DTA) temperature desorption spectroscopy (TDS),thermomechanical analysis (TMA)]热分析[差示扫描量热计法,热-重分析,微分热分析,升温脱附,热机械分析]UV spectroscopy 紫外光谱X-ray techniques [x-ray photoelectron spectroscopy (XPS), x-ray diffraction (XRD), x-ray emission,x-ray absorption] X射线技术[x射线光电子能谱,x射线衍射,x射线发射,x射线吸收]3. Surface Characterization Techniques 表面表征技术Electron energy loss spectroscopy (EELS) 电子能量损失谱Ellipsometry 椭圆偏振术Extended x-ray absorption fine structure (EXAFS) 扩展X射线吸收精细结构Helium (or atom) diffractionLateral (or frictional) force microscopy (LFM) 横向(摩擦)力显微镜Low-energy electron diffraction (LEED) 低能电子衍射Magnetic force microscopy (MFM) 磁力显微镜Near-edge x-ray adsorption fine structure (NEXAFS) 近边X射线吸收精细结构Near field scanning 近场扫描Reflection high-energy electron diffraction (RHEED) 反射高能电子衍射Scanning tunneling microscopy (STM) 扫描隧道显微镜Scanning force microscopy (SFM) 扫描力显微镜Secondary ion mass spectroscopy (SIMS) 二次离子质谱Surface enhanced raman spectroscopy (SERS) 表面增强拉曼光谱Surface extended x-ray adsorption fine structure (SEXAFS) 表面扩展X射线吸收精细结构Surface force apparatus 表面力仪器。

基于DYNA的柔性钨芯弹丸侵彻钢板仿真分析

基于DYNA的柔性钨芯弹丸侵彻钢板仿真分析

基 于 DYNA 的柔 性钨 芯 弹丸侵 彻 钢 板 仿 真 分 析 米
李 翔 飞 ,杨 臻 ,张成 卿 ,朱延 飞
( 1 . 中北 大 学 机 电工 程 学 院 , 山西 太 原 0 3 0 0 5 1 ;2 . 中船 重7 -7 1 3所 ,河 南 郑州 4 5 0 0 5 2 )
0 引 言
侵 彻效能 是 弹药实验 项 目的重 要考 核指标 。长 期 以来 , 靶 场对 弹药 穿 甲性 能 都 是采 用 实 弹 射击 的方 式 进 行考 核 , 不 仅消 耗大量 昂贵的弹 药及靶 场 材料 , 而且
穿透 钢板所 需 的弹头 着速 , m/ s 。 由式 ( 1 ) 可看 出 , 在钢 板 厚 度 一定 时 , 为 了 减 小 穿 透 钢板所 需 的着速 , 可 以 采 用 减 小 穿 甲 钨 芯 的 直 径 和 增 加穿 甲钨 芯重量 的方 法 。
航空科学基金资助项 目 ( 2 0 1 3 2 9 1 0 0 0 1 ) 收 稿 日期 :2 0 1 5 — 0 9 — 0 8 ;修 订 日期 :2 0 1 5 1 2 0 9
仿 真模 拟设 置 的参数 分别 为 : d 一1 2 . 5 ×1 O m;
6 —2 5 ×1 0 _ 。 m; q 一 1 2 0× 1 0 k g; d一 6 0 。 ; 取 穿 甲 系
的非对 称性 及弹 丸与 目标介 质 的接触 分离再 接触 等 问
题 的存 在 , 使 得 弹丸斜 侵彻 坚实介 质 的问题 异常 复杂 。
关于 弹头 的穿 甲计 算 , 目前 还没 有 建 立 能 包括 各 种 影 响因 素的解 析表 达 式 , 一 般 是取 穿 甲速 度 作 为 弹 头穿 甲作用 的基 本示 性 数 , 以此 来衡 量 弹 头 的穿 甲作 用 ] 。为使 问题不 失一 般性 , 做 如下假 设 : ① 以柔 性 钨 芯 弹丸作 为穿 甲弹 头进 行 仿 真 分 析 ; ② 以装 甲板 作 为 弹 丸侵彻 的钢 体 。 理 想状 态下 弹丸侵 彻穿 甲计算 公式 为 :
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Dynamite:Alloy Analyzer+PVS in the Analysis and Verification of Alloy SpecificationsMarcelo F.Frias,Carlos G.Lopez Pombo Department of Computer Science FCEyN-Universidad de Buenos Airesand CONICETArgentinae-mail:{mfrias,clpombo}@dc.uba.arMariano M.MoscatoDepartment of Computer Science FCEyN-Universidad de Buenos AiresArgentinammoscato@dc.uba.arAbstractThis article contains two main contributions.On the the-oretical side,it presents a novel complete calculus for Alloy. On the applied side we present D YNAMITE,a tool that com-bines the semi-automatic theorem prover PVS with the Alloy Analyzer.D YNAMITE allows one to prove Alloy assertion from Alloy specifications,while using the Alloy Analyzer for the automated analysis of hypotheses introduced during the proof process.As a means to assess the usability of the tool, we present a complex case-study based on Zave’s model of addressing for interoperating networks.Categories and Subject Descriptors D.2.4Software Engi-neeringSoftware/Program Verification[Validation]D.2.10 Software Engineering Design[Representation]F.3.1Log-ics and Meanings of Programs Specifying and Verifying and Reasoning about ProgramsTerms Languages,Design,Verification.Keywords Alloy,PVS,software verification.1IntroductionAlong this article we will assume a nodding acquain-tance with Alloy[7].There are two approaches that we are aware of in what respects to theorem proving of Alloy assertions.One is the theorem prover Prioni[2].Prioni translates Alloy specifications tofirst-order formulas char-acterizing theirfirst-order semantics,and then thefirst-order logic theorem prover Athena[1]is used in order to prove the resulting theorem.While the procedure is sound,it is not completely amenable to Alloy users.Switching from a relational to a non relational language poses an overhead on the user.The other theorem prover is the one presented in[6].This theorem prover translates Alloy specifications to a close relational language based on binary relations(the calculus for omega closure fork algebras[4]).Since the re-sulting framework has a complete equational calculus,Al-loy was supplied with a complete equational calculus,too. The translation process involved two main differences from the source Alloy specification:•The resulting specification dealt only with binary rela-tions.Therefore,Alloy relations of greater arity had to be encoded as binary relations.•Since quantifiers were removed from Alloy formulas in the translation process,the target calculus was equa-tional.Notice that there is(again)a shift of languages when moving from Alloy to the calculus for omega closure fork algebras.But this time,the gap between the languages was smaller since the syntax and semantics of the closure fork calculus is closely related to that of Alloy.Unfortu-nately,the elimination of Alloy quantifiers led to fork ex-pressions that were extremely hard to understand and use during proofs.The contributions of this article can be summarized as follows:•We changed the formalism target of our translation in order to include Alloy-likefirst-order quantifiers, while retaining the constrain that relations have to be binary(therefore forcing the encoding of relations of higher arity as binary ones).•We extended the PVS theorem prover[9]with the re-sulting theory,allowing Alloy assertions to be proved with the assistance of PVS.•We modified the front-end of PVS in a way that allows us to view sequents using Alloy syntax(rather than the syntax of the closure fork calculus encoded in PVS).•We developed an application(D YNAMITE)that allows the modified PVS and Alloy interact,in the sense that whenever hypotheses are introduced along a proof,D YNAMITE automatically calls the Alloy Analyzerand checks the supplied hypotheses for counterexam-ples in order to gain confidence about their correctness.The remaining part of the paper is organized as follows. In Section2we present the fork calculus extended with quantifiers.In Section3we show how this calculus can be used as a complete proof calculus for Alloy.In Section4we describe our tool,D YNAMITE.In Section5we present the case-study,and provide some hints on the PVS-supported proofs.Finally,in Section6we present our conclusions.2The Fork Calculus Extended with Alloy QuantifiersIn this section we present the theoretical foundations of D YNAMITE.D YNAMITE extends PVS with axioms charac-terizing the class of proper point-dense omega closure fork algebras(to be introduced in Sections2.1and2.3).The calculus thus obtained(the point-dense omega closure fork calculus–c.f.Section2.2)is afirst-order calculus whose formulas closely resemble those of Alloy.2.1Omega Closure Fork AlgebrasThe class of omega closure fork algebras[4]is described through a few equational axioms.The intended models of these axioms are structures called proper omega closure fork algebras,in which the domain is a set of binary re-lations(on some base set,let us say B),closed under the following operations for sets:•union of two binary relations,denoted by+,•intersection of two binary relations,denoted by&,•complement of a binary relation,denoted,for a binary relation r,by r,•the empty binary relation,which does not relate any pair of objects,and is denoted by∅,•the universal binary relation,usually B×B,that will be denoted by1.Besides the previous operations for sets,the domain has to be closed under the following operations for binary rela-tions:•transposition of a binary relation.This operation swaps elements in the pairs of a binary relation.Givena binary relation r,its transposition is denoted by∼r,•navegation(composition)of two binary relations,which,for relations r and s is denoted by r.s,•reflexive–transitive closure,which,for a binary rela-tion r,is denoted by∗r,•the identity relation(on B),denoted by iden.Finally,a binary operation called fork is included,which requires the base set B to be closed under an injective func-tion .This means that there are elements x in B that are the result of applying the function to elements y and z. Since is injective,x can be seen as an encoding of the pairy,z .The application of fork to binary relations R and Sis denoted by R∇S,and its definition is given by:R∇S={ a,b c : a,b ∈R and a,c ∈S}.In a proper omega closure fork algebra the relationsπandρdefined byπ=∼(iden∇1),ρ=∼(1∇iden)behave as projections with respect to the encoding of pairs induced by the injective function .Their semantics in a proper omega closure fork algebra A whose binary relations range over a set B,is given byπ={ a b,a :a,b∈B},ρ={ a b,b :a,b∈B}.The operation cross(denoted by⊗)performs a kind of parallel product.Its set-theoretical definition is given by: R⊗S={ a c,b d : a,b ∈R∧ c,d ∈S}.In algebraic terms,operation cross is defined byR⊗S=(π.R)∇(ρ.S).2.2The Omega Closure Fork CalculusIn Section2.1we introduced the class of proper omega closure fork algebras.Notice that their operations are closely related to those of Alloy.Therefore,it is worth ask-ing wether there is a complete calculus for this class.Let us consider the following axioms and inference rules.1.Your favorite set of equations axiomatizing Booleanalgebras.These axioms define the meaning of union,intersection,complement,the empty set and the uni-versal relation.2.Formulas defining composition of binary relations,transposition,reflexive–transitive closure and the iden-tity relation:x.(y.z)=(x.y).z,x.iden=iden.x=x,(x.y)&z=∅iff(z.∼y)&x=∅iff(∼x.z)&y=∅,∗x=iden+(x.∗x),∗x.y.1≤(y.1)+∗x.(y.1&(x.y.1)).3.Formulas defining the operator∇:x∇y=(x.∼π)&(y.∼ρ),(x∇y).∼(w∇z)=(x.∼w)&(y.∼z),π∇ρ≤iden.The inference rules for the closure fork calculus are those for equational logic(see for instance[3,p.94]),plus the following equational(but infinitary)proof rule for reflexive-transitive closure1:iden≤y x i≤y x i+1≤y(ΩRule)∗x≤yThe axioms and rules given above define a class of mod-els.Proper omega closure fork algebras satisfy the axioms [5],and therefore belong to this class.It could be the case that there are models for the axioms that are not proper omega closure fork algebras.Fortunately,as was proved in [5],[4,Thm.4.2],if a model is not a proper omega closure fork algebra then it is isomorphic to one.2.3The Point-Dense Omega Closure Fork Calcu-lusGiven an omega closure fork algebra,points are special elements in it.In a proper omega closure fork algebra,a point is a relation of the form{ a,a }.Point-dense proper omega closure fork algebras are then omega closure fork algebras in which there are plenty of these relations.We can characterize points as nonempty relations that satisfy the following equation:x.1.x≤iden.We then introduce,as an abbreviation,a predicate“Point”that determines those relations that are points:Point(p)⇐⇒p!=∅∧p.1.p≤iden. Once points are characterized,point-dense omega closure fork algebras are omega closure fork algebras that satisfy(in addition to the axioms of the omega closure fork calculus), the followingfirst-order formula:all r|r!=∅&&r in iden=>some p|Point(p)&&p≤r.From[8],the following theorem follows:T HEOREM2.1Every point-dense omega closure fork alge-bra A is isomorphic to a proper omega closure fork algebra B.Moreover,there exist relations{ a0,a0 },...,{ a i,a i }...1Given i>0,by x i we denote the relation inductively defined as follows:x1=x,and x i+1=x.x i.(possibly infinitely many of them)that belong to B,such thatiden={ a0,a0 ,..., a i,a i ,...}.Notice that representability of the abstract algebra A as the proper fork algebra B is guaranteed(independently) both by the existence of fork,and by point-density.As it will be seen later,neither fork nor point-density can be re-moved,since they will play important(and different)roles besides guaranteeing representability.2.4Adding QuantifiersSo far,the formulas of the omega closure fork calculus are all equations.We will now consider the restricted part of thefirst-order language of point-dense omega closure fork algebras,defined by the following grammar:F::=Equation|!F|F1||F2|F1&&F2|::=all p|Point(p)implies FActually,in a fork algebra we will have dif-ferent sub relations of the identity relation,namely iden1,...,iden k,representing each one a different Alloy signature sig1,...,sig k.We will then use the following ab-breviated notation for formulas.A formulaall p|(Point(p)&&p in iden i)implies Fis abbreviated asall p:sig i|F.Similar abbreviations are used for the“some”quantifier.Notice that Alloy quantifiers range over relations of the form{a},i.e.,over unary singletons.On the other hand, relational quantifiers range over the elements of an omega closure fork algebra,which are not even required to be rela-tions(recall that omega closure fork algebras are just mod-els of a set of axioms).Now,since omega closure fork alge-bras are all isomorphic to proper ones,a relational quantifier can always be seen as ranging over all binary relations from a proper omega closure fork algebra.Still a big distance remains between unary singletons and arbitrary binary re-lations.It is at least obvious that there are many more of the latter,than there are of the former.Point-density,by forcing the existence of all singletons,allows us to estab-lish a one-one correspondence between{a}and{ a,a }. Therefore,we will mimic the behavior of Alloy quantifiers by constraining relational quantifiers to range over points. 3A Complete Calculus for AlloyIn this section we introduce a mapping from Alloy for-mulas to formulas in the language defined in Section2.4. The mapping keeps the structure of Alloy formulas almostunchanged,thus simplifying the understanding of the re-sulting formulas by casual Alloy users.Since point-dense omega closure fork algebras only contain binary relations,we will show how to model relations of arbitrary rank as binary ones,with the aid of fork.We will then prove that the resulting calculus is complete for Alloy.3.1Handling Relations of Rank Greater Than TwoGiven a n -ary relation R ⊆A 1×···×A n ,we will represent it by the binary relation{ a 1,a 2 ··· a n : a 1,...,a n ∈R }.This will be an invariant in the representation of n -ary rela-tions by binary ones.For instance,given an Alloy ternary relation map ⊆Memory ×addrs ×Data ,in our frame-work it is encoded as a binary relation map whose elements are pairs of the form m,a d for m :Memory ,a :Addr and d :Data .We will in general denote the encoding of a relation C as a binary relation,by C .Given a point (in the relational sense)m :Memory ,the navigation of the relation map through m should result in a binary relation contained in Addr ×Data .Given a point a :t and a bi-nary relation R encoding a relation of rank higher than 2,we define the navigation operation •bya •R =∼π.Ran (a.R ).ρ.(1)Operation Ran in (1)returns the range of a relation asa partial identity.It is defined by Ran (x )=(x.1)·1,.Its semantics in terms of binary relations is given byRan (R )={ a,a :∃b s .t . b,a ∈R }.For a binary relation R representing a relation of rank less than or equal to 2,navigation is easier.Given a point a :t ,we definea •R =Ran (a.R ).It still remains to define navigation whenever the relation on the left-hand side is not a point,i.e.,it has rank greater than 1.The definition is as follows:R •S =(R.(iden ⊗(iden ⊗(···⊗((iden ⊗S ).π))))if rank(S )=1R.(iden ⊗(iden ⊗(···⊗(iden ⊗S ))))if rank(S )>1Going back to our example about memories,it is easy to check that for a point m :Memory such that m ={ m,m },m •map ={ a,d :a ∈Addr ,d ∈Data and m,a d ∈map }.3.2Translating Alloy Formulas to Relational For-mulasIn this section we present a translation of Alloy formulas to formulas in the language of point-dense omega closure fork algebras.Prior to that,it is necessary to translate Alloy terms to fork-algebra terms.The translation differs from the one presented in [6]in that it is no longer necessary to encode quantified variables,since these are kept explicit in the translation subject of this article.T (C )=C ,T (x i )=X i ,(X i variable ranging over points )T (∼r )=∼T (r ),T (+r )=T (r ).∗T (r ),T (r +s )=T (r )+T (s ),T (r &s )=T (r )&T (s ),T (r −s )=T (r )&T (s ),T (r.s )=T (r )•T (s ).We are now in the right conditions for translating for-mulas.The translation differs from the one previously pre-sented in [6]in that the target of the translation is a first-order language rather than an equational language.This will greatly improve the understandability of the translation by a casual Alloy user.F (t 1in t 2)=T (t 1)≤T (t 2),F (!α)=!F (α),F (α||β)=F (α)||F (β),F (α&&β)=F (α)&&F (β),F (all x :S |α)=all x :S |F (α),F (some x :S |α)=some x :S |F (α).Recall that quantifications in the right-hand side are abbre-viations for formulas where quantifiers range over points of the appropriate signature.3.3Completeness of the Alloy CalculusNotice that an environment is,in the context of Alloy,a function that assigns sets to signatures,adequate relations to relational variables (for instance to those arising as signa-ture fields),or values to variables over individuals.From an Alloy environment e we build a point-dense omega closure fork algebra F e and a relational environment e as follows:•Let sig 1,...,sig k be the Alloy signatures.Let A =1≤i ≤k e (sig i ).Let T (A )be the set of finite binary trees with information in the leaves,and whose infor-mation are elements from A .•Let F e be the omega closure fork algebra with universe P (T (A )×T (A )).If we denote the tree constructorsby:leave:A→T(A)and bin:A×A→T(A),the fork operation is defined byR∇S={ a,bin(b,c) : a,b ∈R∧ a,c ∈S}. Notice that the remaining operations have their mean-ingfixed once the domain P(T(A)×T(A))isfixed.•Let e be the environment satisfying:–e (sig i)=p∈F e:Point(p)∧p≤iden e(sigi),–e (R)=R(the binary encoding of relatione(R)),–e (v i)={ e(v i),e(v i) }.Similarly,given a point-dense proper omega closure fork algebra,and a relational environment e,we define an Alloy environment e as follows:•e (sig i)=a: a,a ∈iden sigi,•e (R)={ a1,...,a n : a1,a2 ··· a n ∈e(R)},•e (v i)=a such that e(v i)={ a,a }.From the previous definitions,the following lemmata can be proved.L EMMA3.1Given an Alloy environment e,|=ϕ[e]⇐⇒F e|=F(ϕ)[e ].L EMMA3.2Given a point-dense proper omega closure fork algebra F and a relational environment e,there exists an Alloy environment e such that for every Alloy formula ϕ,F|=F(ϕ)[e]⇐⇒|=ϕ[e ].We then prove the following completeness theorem.The turnstile symbol stands for derivability in the calculus for point-dense omega closure fork algebras.T HEOREM3.3Letϕbe an Alloy formula.Then,|=ϕ⇐⇒ F(ϕ).Proof.=⇒)If F(ϕ),then there exists a point-dense omega closure fork algebra F such that F|=F(ϕ).From Thm.2.1there exists a proper point-dense omega closure fork algebra F isomorphic to F.Clearly,F |=F(ϕ).Then, there is a relational environment e such that F |=F(ϕ)[e]. From Lemma3.2,there exists an Alloy environment e such that|=ϕ[e ].Thus,|=ϕ.⇐=)If|=ϕ,then there exists an Alloy environment e such that|=ϕ[e].From Lemma3.1there exist a proper point-dense omega closure fork algebra F e and a relational envi-ronment e such that F e|=F(ϕ)[e ].Then, F(ϕ).4The Dynamite ToolPVS[9]interacts with its users through the highly cus-tomizable text editor EMACS.D YNAMITE is a tool devel-oped by customizing both EMACS and PVS.In Sections 4.1and4.2we describe these customizations.In Sec-tion4.3we describe the proof process a user would go through,showing how these adaptations make the proof process more amenable.4.1Customizations Made on EMACSEMACS is a highly customizable text editor.It is possi-ble to run other applications from within EMACS.It is now possible to run the Alloy Analyzer on a specific model in order to analyze a provided assertion.While the standard scope for domains is3,it is also possible for the user to choose new scopes.This is extremely useful when adding lemmas whose proof has not yet been developed,to a the-ory.The new lemma can be checked within the theory both for counterexamples and consistency with the aid of the Al-loy Analyzer.Once PVS has been started,it is possible to choose an Alloy model(a.alsfile)and an extension of EMACS allows one to translate the Alloy model to an ap-propriate PVS theory.4.2Customizations Made on PVSPVS reads theories and shows proofs in its specific syn-tax.Even properties written in Alloy,if one wants to prove them with the support of PVS,have to be rewritten using the syntax PVS recognizes.We have modified the PVS pretty printer in order to exhibit formulas using Alloy syntax.This will be shown with an example in Section5.The PVS rule“case”,which allows one to introduce new hypotheses along a proof,has also been modified.Accord-ing to[9],if the current sequent is of the formΓ ∆,then the rule“(case A)”generates the subgoals A,Γ ∆and Γ A,∆.The rule allows to use formula A as an extra hy-pothesis along the proof of∆,which has to be discharged later through a proof.Executing the modified rule“case”, besides performing its regular duty of generating the ap-propriate subgoals,also automatically analyzes formula A using the Alloy Analyzer.4.3A Proof ScenarioA development team has developed an Alloy model,and has already debugged it by automatically analyzing some appropriate assertions.Since the model will serve as a basis for the development of a critical system,bounded analysis is not enough.Then they face the need to prove a given property about their model.Upon starting D YNAMITE,theyupload the Alloy model.This generates(although they do not need to know about it),the corresponding PVS theory, and the user can choose an assertions to prove.Facts from the model are now available as axioms to be used in proofs.The proof then proceeds until a new hypothesis has to be introduced using the PVS command“case”,in whose case the Alloy Analyzer is called in the background in order to check the hypothesis for counterexamples and consistency. If a new lemma has to be added to the theory,then the Alloy Analyzer can be used from within the framework in order to check for the existence of counterexamples,and for con-sistency.5A Case Study:A Formal Model of Ad-dressing for Interoperating NetworksIn her paper[10],Zave presents a formal model of ad-dressing for interoperating networks.These network con-nect agents(which might be hardware devices or other soft-ware systems).Agents can be divided between client agents (users of the networking infrastructure),or server agents (part of the infrastructure).Agents can use resources from domains,to which they must be attached.In order to be able to reach clients from domains,pairs address,domain are assigned to clients.The(simplfied2)Alloy model is then:abstract sig agent{attachments:set Domain}sig server extends Agent{}sig Client extends Agent{knownAt:Address->Domain}While addresses are atomic elements,domains are not. Domains contain their own address space,and a mapping assigning addresses(in their address space)to agents.sig Domain{space:set Address,map:space->Agent}Some appropriate facts are added to the model,for in-stance saying that whenever an agent appears in the range of the domains map,it is because the agent is attached to that domain.Domains can create persistent connections between agents.Such connections are called hops.Besides the do-main that created it,a hop contains information about the initiator and acceptor agents taking part in the connection, and also source and target addresses.A fact forces these ad-dresses to correspond to the agents(according to the domain map).2The complete Alloy model on which the proofs were based can be obtained from /∼pamela/svcrte.html.sig Hop{domain:Domain,initiator,acceptor:Agent,source,target:Address}Multi-hop connections are enabled by the servers.These connections are called links.Links contain information about the server enabling the connection,and about the con-nected hops.abstract sig End{}one sig Init,Accept extends End{}sig Link{server:Server,oneHop,anotherHop:Hop,oneEnd,anotherEnd:End}{oneHop!=anotherHoponeEnd in Init=>agent=oneHop.initiatoroneEnd in Accept=>agent=oneHop.acceptoranotherEnd in Init=>agent=anotherHop.initiator anotherEnd in Accept=>agent=anotherHop.acceptor}The reflexive-transitive closure of the accessibility rela-tion determined by links is kept by an object“Connections”, which also keeps the relation established by the links.one sig Connections{atomConnected,connected:Hop->Hop}Interoperation is considered a feature of networks.Fea-tures are installed in domains and have a set of servers from that domain that implement them.Among the facts related to features,wefind that each feature has at least one server, and that each server implements exactly one feature. abstract sig Feature{domain:Domain,servers:set Server}Interoperation features are then characterized as follows:sig InteropFeature extends Feature{ toDomain:Domain,exported,imported,remote,local:set Address,interTrans:exported some->some imported}{domain!=toDomainexported in domain.spaceemote in exportedimported in toDomain.spacelocal in importedremote.interTrans=local}An interoperation feature translates addresses(through relation interTrans)between different domains.This is nec-essary because whenever a client from the feature’s domain wishes to connect to a client attached to a different domain, it must have a target address it can use in its own domain space.Of course,the target client must have an address in each domain from which it is to be reached.Different facts are introduced in[10]in order to fully understand an inter-operation feature behavior.It is most times difficult to determine what are desirable properties of such networks;among other things,because their constant evolution makes difficult tofind properties that will be invariant over time.Yet some essential prop-erties should be expected.Among these properties,in[10] and the corresponding Alloy model,the following are sin-gled out.assert ConnectedIsEquivalence{all c:Connections|(all h:Hop|h in h.(c.connected))&& (all h1,h2:Hop|h1in h2.(c.connected) =>h2in h1.(c.connected))&& (all h1,h2,h3:Hop|h2in h1.(c.connected)&&h3in h2.(c.connected)=>h3in h1.(c.connected))}assert UnidirectionalChains{all l:Link|(l.agent=l.oneHop.acceptor&&l.agent=l.anotherHop.initiator)|| (l.agent=l.oneHop.initiator&&l.agent=l.anotherHop.acceptor)}assert Reachability{all c:Connections, g1,g2:Client,h:Hop,a:Address,d:Domain|g1=h.initiator&&d=h.domain&&a=h.target&&(a->d)in g2.knownAt=>(some h2:Hop|g2=h2.acceptor&& (h->h2)in c.connected)}assert Returnability{all c:Connections, g1,g2:Client,h1,h2,h3:Hop|h1.initiator=g1&&h2.acceptor=g2&&(h1->h2)in c.connected&&h3.initiator=g2&&h3.domain=h2.domain&&h3.target=h2.source=>(some h4:Hop|h4.acceptor=g1&&(h3->h4)in c.connected)} We proved these properties from the Alloy model usingD YNAMITE.Without using the modified pretty printer from PVS,the PVS specification of the returnability predicate looks like this:FAL_Returnability:|-------{1}FORALL(hDm:(hop_domain),fDm:(feature_domain), tDm:(toDomain),tar:(target),rem:(remote),aCn:(atomConnected),con:(connected),oHp:(oneHop),aHp:(anotherHop),rBy:(reachedBy),map:(map),acc:(acceptor),srv:(servers),exp:(exported),imp:(imported),loc:(local),iTr:(interTrans),spc:(space),agn:(agent),oEd:(oneEnd),aEd:(anotherEnd),ini:(initiator),att:(attachments),src:(source)):FORALL(g1,g2:(Client),h1,h2,h3:(Hop)):Navigation_2(h1,ini)=g1AND Navigation_2(h2,acc)=g2AND Leq(composition(composition(h1,one),h2),Navigation(cConnections,con))AND Navigation_2(h3,ini)=g2AND Navigation_2(h3,hDm)=Navigation_2(h2,hDm)AND Navigation_2(h3,tar)=Navigation_2(h2,src)IMPLIES(EXISTS(h4:(Hop)):Navigation_2(h4,acc)=g1ANDLeq(composition(composition(h3,one),h4),Navigation(cConnections,con)))After the pretty printer was modified,the same predicatenow is presented to the user as follows:FAL_Returnability:|-------{1}all g1,g2:Client,h1,h2,h3:Hop|(h1.ini)=g1AND(h2.acc)=g2AND(h1->h2)in(cConnections.con)AND(h3.ini)=g2AND(h3.hDm)=(h2.hDm)AND(h3.tar)=(h2.src)IMPLIES(some h4:Hop|(h4.acc)=g1AND(h3->h4)in(cConnections.con)) Notice that the pretty printed version closely resemblesthe Alloy definition.Furthermore,it can even be compiledwith the Alloy Analyzer.The proof fragment presented in Fig.1shows a branchin the proof tree of the property informally described as fol-lows:The“Accept”ends in a link,point to hops thatcontain the link’s agent as acceptor.Besides showing that it is possible to make proofs withinthe presented calculus with the aid of D YNAMITE,we will present some empirical data that will allow readers to havea better understanding of the usability of the tool.。

相关文档
最新文档