{"id":216,"date":"2017-12-22T03:18:00","date_gmt":"2017-12-22T03:18:00","guid":{"rendered":"https:\/\/kindsonthegenius.com\/blog\/2017\/12\/22\/basic-formalisms-for-design-modelling\/"},"modified":"2017-12-22T03:18:00","modified_gmt":"2017-12-22T03:18:00","slug":"basic-formalisms-for-design-modelling","status":"publish","type":"post","link":"https:\/\/kindsonthegenius.com\/blog\/basic-formalisms-for-design-modelling\/","title":{"rendered":"Basic Formalisms for Design Modelling"},"content":{"rendered":"<div style=\"color: #555555; font-size: 18px; line-height: 30px; text-align: justify;\">\n<div style=\"font-family: 'segoe ui';\">In this article we would discuss five basic formalism for design modelling. They are:<\/p>\n<ol>\n<li>Kripke Structure<\/li>\n<li>Kripke Transition System<\/li>\n<li>Labelled Transition System<\/li>\n<li>Finite State Automata <\/li>\n<li>Timed Automata<\/li>\n<\/ol>\n<p><b>2. Kripke Structure<\/b><br \/>Kripke Structure is a kind of transition system used in Model Checking to represent the behavior of a system. It is represented as a directed graph where the nodes represent the reachable states of the system and the edges represents the state transitions.<br \/>A function is used to map each of the nodes to a set of properties that hold true in that particular state<\/p>\n<p><b>Formal Definition of Kripke Structure<\/b><br \/>Assuming AP is a set of atomic propostions (a boolean expressions over set of symbols, variable and constants), Kripke structure is defined over AP as a tuple T = {S, I, R, L} consisting of<\/p>\n<p>S = {s1, s2, s2,&#8230;, sn} representing a finite set of states<br \/>I = set of initial states (subset of S)<br \/>R = set of transitions<br \/>L = labeling of the state such that <i style=\"-webkit-text-stroke-width: 0px; background-color: white; color: #222222; font-family: sans-serif; font-size: 14px; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;\">L<\/i><span style=\"background-color: white; color: #222222; display: inline; float: none; font-family: sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;\">:&nbsp;<\/span><i style=\"-webkit-text-stroke-width: 0px; background-color: white; color: #222222; font-family: sans-serif; font-size: 14px; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;\">S<\/i><span style=\"background-color: white; color: #222222; display: inline; float: none; font-family: sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;\">&nbsp;\u2192 2<\/span><sup style=\"-webkit-text-stroke-width: 0px; background-color: white; color: #222222; font-family: sans-serif; font-size: 11.2px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; line-height: 1; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;\"><i>AP<\/i><\/sup><span style=\"background-color: white; color: #222222; display: inline; float: none; font-family: sans-serif; font-size: 14px; font-style: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;\"> <\/span><\/p>\n<p><b>Example of Kripke Structure<\/b><br \/>An example of the Kripke Structure is the process model shown in the Figure 1.<\/p>\n<table align=\"center\" cellpadding=\"0\" cellspacing=\"0\" style=\"margin-left: auto; margin-right: auto; text-align: center;\">\n<tbody>\n<tr>\n<td style=\"text-align: center;\"><a href=\"https:\/\/3.bp.blogspot.com\/-kPUgZJxqouo\/WjxwZYiTZFI\/AAAAAAAAAkA\/Zp-EoeSjsqcOtio0HW12lx6q2ZvNUHpfQCLcBGAs\/s1600\/Kripke-Structure-for-Process-Model.jpg\" style=\"margin-left: auto; margin-right: auto;\"><img decoding=\"async\" loading=\"lazy\" border=\"0\" data-original-height=\"574\" data-original-width=\"1239\" height=\"185\" src=\"https:\/\/3.bp.blogspot.com\/-kPUgZJxqouo\/WjxwZYiTZFI\/AAAAAAAAAkA\/Zp-EoeSjsqcOtio0HW12lx6q2ZvNUHpfQCLcBGAs\/s400\/Kripke-Structure-for-Process-Model.jpg\" width=\"400\" \/><\/a><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\">Figure 1: Kripke Structure for the Process Model<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Figure 1 illustrates Kripke structure for T = {S, I, R, L} where<br \/>S = { s1, s2, s3, s4, s5}<br \/>I = {s1}<br \/>R = {(s1, s2), ( s2, s3), (s3,s4), (s4,s5), (s3,s2), (s3,s5), (s5,s2)}<br \/>AP = {New, Ready, Running, Exit, Blocked}<br \/>We can also write L by mapping the transition states to the atomic propositions.<\/p>\n<p><b>Notes on Kripke Structure<\/b><br \/>Could have more than one label per transition<br \/>Expresses properties of state and transition<br \/>Could be&nbsp; used to model algorithms<\/p>\n<p><b>&nbsp;3. Labelled Transition System<\/b><br \/>A labelled transition system is made up of a set of states and a set of transitions between those states. These transitions are labelled by actions. One of the states is the initial state.<\/p>\n<p><b>Formal Definition of Labelled Transition System<\/b><br \/>A labelled transition system (LTS) over a set of actions is given by:<br \/>S = finite set of states<br \/>A = Set of actions<\/p>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mo stretchy=\"false\">\u2192<!-- \u2192 -->\u2286<!-- \u2286 --><\/mo>  <mi>S<\/mi>  <mo>\u00d7<!-- \u00d7 --><\/mo>  <mi>A<\/mi>  <mo>\u00d7<!-- \u00d7 --><\/mo>  <mi>S is a set of transitions<\/mi><\/math>\n<p><\/p>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>s0 is the initial state<\/mi><\/math>\n<p><b><\/p>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>Note on Labelled Transition System<\/mi><\/math>\n<p><\/b><\/p>\n<ul>\n<li>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>Has on action per transition<\/mi><\/math>\n<\/li>\n<li>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>Expresses properties of transitions<\/mi><\/math>\n<\/li>\n<li>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>Could be applied in modelling communication protocols&nbsp;<\/mi><\/math>\n<\/li>\n<\/ul>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>In the next part we would continue with<\/mi><\/math>\n<\/div>\n<ul>\n<li>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>Kripke Transition System<\/mi><\/math>\n<\/li>\n<li>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>Finite State Automata<\/mi><\/math>\n<\/li>\n<li>\n<math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><mi>Timed Automata&nbsp;<\/mi><\/math>\n<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In this article we would discuss five basic formalism for design modelling. They are: Kripke Structure Kripke Transition System Labelled Transition System Finite State Automata &hellip; <\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[359],"tags":[],"_links":{"self":[{"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/posts\/216"}],"collection":[{"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/comments?post=216"}],"version-history":[{"count":0,"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/posts\/216\/revisions"}],"wp:attachment":[{"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/media?parent=216"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/categories?post=216"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kindsonthegenius.com\/blog\/wp-json\/wp\/v2\/tags?post=216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}