<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected{color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}
	
.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.sparkline {background:[[ColorPalette::PrimaryPale]]; border:0;}
.sparktick {background:[[ColorPalette::PrimaryDark]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:'alpha(opacity:60)';}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0em 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0em 1em 1em; left:0px; top:0px;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0em 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 .3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0em 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0em 0em 0em; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0em;}
.wizardFooter .status {padding:0em 0.4em 0em 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em 0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0em; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em 0.2em 0.2em 0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em 0.2em 0.2em 0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em 1em 1em 1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0em;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0em 0em 0.5em;}
.tab {margin:0em 0em 0em 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0em 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0em 1em;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0em 0.25em; padding:0em 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0em; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}

.fieldsetFix {border:0; padding:0; margin:1px 0px 1px 0px;}

.sparkline {line-height:1em;}
.sparktick {outline:0;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em 0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em 0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0em; right:0em;}
#backstageButton a {padding:0.1em 0.4em 0.1em 0.4em; margin:0.1em 0.1em 0.1em 0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin:0em 3em 0em 3em; padding:1em 1em 1em 1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em 0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none ! important;}
#displayArea {margin: 1em 1em 0em 1em;}
/* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
noscript {display:none;}
}
/*}}}*/
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser'></span></div>
<!--}}}-->
To get started with this blank TiddlyWiki, you'll need to modify the following tiddlers:
* SiteTitle & SiteSubtitle: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* MainMenu: The menu (usually on the left)
* DefaultTiddlers: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
These InterfaceOptions for customising TiddlyWiki are saved in your browser

Your username for signing your edits. Write it as a WikiWord (eg JoeBloggs)

<<option txtUserName>>
<<option chkSaveBackups>> SaveBackups
<<option chkAutoSave>> AutoSave
<<option chkRegExpSearch>> RegExpSearch
<<option chkCaseSensitiveSearch>> CaseSensitiveSearch
<<option chkAnimate>> EnableAnimations

----
Also see AdvancedOptions
<<importTiddlers>>
Modeling and simulation in systems biology seeks for understanding the dynamic behavior of living cells. Since the biological knowledge is quickly increasing, modeling and simulation are now faced to systems with complex control, stochastic effects, and increasing size. Formal modeling approaches are essential for proper model verification and system prediction. 
The bioComputing team develops and studies languages for modeling and simulation of bio-molecular systems. Our approach is based on concurrent programming languages with stochastic semantics. In parallel, we perform case studies on concrete biological systems. A particular aim is to incorporate spatial aspects in living cells into our models.
~BioComputing is a team of the computer science department of Lille ([[CRIsTAL| http://www.cristal.univ-lille.fr/ ]])

<html>

</html>
!! Group meetings

[[Past events before 2011|Past Events]]

<html>
<iframe src="https://www.google.com/calendar/embed?showTitle=0&amp;mode=AGENDA&amp;height=300&amp;wkst=1&amp;hl=en&amp;bgcolor=%23FFFFFF&amp;src=lms7sp6toout3sfbd52v8bpm0o%40group.calendar.google.com&amp;color=%23691426&amp;ctz=Europe%2FBerlin" style=" border-width:0 " width="700" height="300" frameborder="0" scrolling="no"></iframe>
</html>

!! News




<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div>
<div class='editorFooter'>
   <span macro='message views.editor.tagPrompt'></span>
   <span macro='tagChooser'></span>
</div>
<!--}}}-->
Your username for signing your edits:
<<option txtUserName>>
<<option chkSaveBackups>> Save backups
<<option chkAutoSave>> Auto-save
<<option chkRegExpSearch>> Regular expressions search
<<option chkCaseSensitiveSearch>> Case sensitive search
<<option chkAnimate>> Enable animations
<<option chkSinglePageMode>> Single page mode
<<option chkFilterPublicTagsSearch>> Filter public tags in search results
<<option chkUnixFileSystem>> Unix file system

----
Also see AdvancedOptions
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='Author.SideBarOptions'></div>
<div id='sidebarTabs' refresh='macro' force='true' macro='slider chkSideBarTabs Author.SideBarTabs "index »" "display lists of tiddlers"'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<<search>><<closeAll>><<permaview>><<newTiddler>><<saveChanges>><<slider chkSliderOptionsPanel Author.OptionsPanel "options »" "Change TiddlyWiki advanced options">>
<<tabs txtMainTab "Main" "Principal index" Index.All "Timeline" "Timeline" TabTimeline "All" "All tiddlers" TabAll "Tags" "All tags" TabTags "More" "More lists" TabMore>>
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
* Yasushi Saka, University of Aberdeen, Scotland:  modeling genetic networks in development. This started as a local collaboration when Yasushi was our office neighbor at the IRI. 
* ~ProBioGem, Polytechnique, Lille: synthetic biology, peptide overproduction in B. Subtilis
* Computer Algebra Team, LIFL, whose main focus is on ordinary differential equations. We plan to set up a new research group on biological modeling. Our working group aims at exploring the proper advantages of our complementary approaches to modeling and simulation.
* Mathias John and Adelinde Uhrmacher, Rostock University, Germany: spatial aspects in the stochastic pi-calculus (2007-2010).
* Cristian Versari, University of Bologna, Italy: extensions of the stochastic pi-calculus (2008-2011).
* B. Vandenbunder, IRI: co-supervision of Céline Kuttler's ~PhD thesis (2003-06). 
[[About]]
Seminar by Oana Andrei , PhD, University of Glasgow at the
LIFL seminar, Feb 25th 2010:

Abstract:

Computational models for biochemical signalling pathways are useful 
for biologists since they allow them to test the level of
understanding in the first place, to perform virtual experiments with
predictive role and to correct the model or its parameters if needed,
and then to perform in vitro the experiments which may provide new
hypothesis for the model. One major problem in proposing such a
computational model concerns the choice of the formalisms that suit
best the needs of biologists for modelling the signalling pathways and
analysing their properties.

In this talk I will present two different approaches I used for
modelling biochemical pathways. In the first part I will review the
higher order biochemical calculus instantiated for port graph
rewriting capable of modelling signalling transduction at the
protein-protein interaction level as well as of verifying invariant
properties at execution time. I will continue with presenting my work
on stochastic modelling using continuous-time Markov chains (~CTMCs)
with levels applied on a ~AKAP-mediated interaction in the !Raf/MEK/ERK
pathway. In the end I will review some questions I am concerned with
on using ~CTMCs and stochastic model checking for the modelling and
analysis of biochemical pathways.

* 2012-17: ANR Iceberg (ANR Avenir)
* 2011 ~EquipEx Realcat (Investissements Avenir, ~LabEx), with UCCS, ~ProBioGEM, LAGIS
* 2011 [[ERCIM | http://www.ercim.eu/ ]] postdoctoral fellowship to Cristian Versari
* 2011 [[RNSC | http://rnsc.fr/ ]] grant "rewired" , 2011, with Jean Krivine (CNRS, Université Paris 7), Jerome Feret (INRIA, Ecole Normale Superieure ) and Vincent Danos (CNRS, Université Paris 7 and University of Edinburgh)
* 2010-13 ~PhD scholarship co-funded by CNRS and the Conseil Regional du ~Nord-Pas de Calais.
* 2009-12: ANR BioSpace (ANR Jeunes)
* 2009: BQR grant to C. Kuttler
* PEPS (2007-2008, project initiation funding by the CNRS)
* PPF ~BioInfo (2007-2008), cooperation project between biologists and computer scientist at Lille University
* In an early first phase, our project was supported by a local university BQR grant to C. Lhoussaine. C.Kuttler's ~PhD thesis was funded by grant from the Conseil Général du Nord - Pas de Calais. Visitors have been supported by the LIFL. 
!!This is an implementation of the work presented in
* Mathias John, Cédric Lhoussaine, Joachim Niehren, Adelinde Uhrmacher: The Attributed Pi Calculus with Priorities. Transactions on Computational Systems Biology XII, 5945: 13-76, 2010. [[(on hal)|http://hal.inria.fr/inria-00422969]] 
*Mathias John, Cédric Lhoussaine, Joachim Niehren: Dynamic Compartments in the Imperative Pi Calculus. Computational Methods in Systems Biology, 7th International Conference 5688: 235-250, 2009. [[(on hal)|http://hal.inria.fr/inria-00422970]] 
!!Requirements
* programming language: Java JDK version 1.6 or higher
* operating system: developed under recent Windows system, working with ~MacOSX and Linux.
!! <html>
<a href=" JamesImpPi.rar", type="application/octet-stream">Download James Imp Pi</a>
</html>

!!Before running it
* '''make sure to have java command fixed to the jdk''' (and not to the jre)
** if not compiling models will not work although ~JamesII will still start
** to fix java command to the jdk under Windows:
*** locate the jdk on your computer
*** set PATH=<Path to your jdk>\bin;%PATH%
** to fix java command to the jdk under MAC OS:
*** PATHTOJDK="/System/Library/Frameworks/~JavaVM.framework/Versions/1.6.0/Home"
*** export PATHTOJDK
* as MAC OS user 
** rename gui_macos.jar.rename to gui_macos.jar before
** starting james to have Mac Menu -> James -> Quit/Dock -> James -> Quit work properly.
!!Running James ~Pi-Imp
* extract contents of file
* switch to where ever you extracted the contents to.
* here you're gonna find a folder called James ~Imp-Pi. Switch into that.
* from there you call the following command from a command line or terminal: java -jar  ~JamesII.jar
!!Configure James Window
* click on "Edit"
* then click on "Preferences..."
* in the Preferences Window you select "GUI Options"
* there you activate "Workflow Perspective"
* hit "OK"
* a new menu entry should have appeared "Workflow"
* click on "Workflow"
* then on "Start simple M&S"
* select "Attributed Pi"
* click "Next"
!!Editing ~Pi-Imp Programs
* a model editor should have opened
* example models are provided in the package (*.attrpi)
* once you are finished with the model source and there are no warnings or errors shown click "Next"
* click "Finish" on the next page
!!Simulation
* instrumenter selection dialog should popup
* here select simulator.pi.instrumentation.population.~PopulationPlotterInstrumenterFactory(...)
* click "OK"
!!Simulation Plots
* if everything works well with your model a dialog should show up where the visualization can be selected
* here activate "Visualisation Data Plotter"
* click "OK"
* an empty chart should show up and a control window with play, stop, ...
* to start the simulation hit "Run Simulation" (Play)
* to control simulation speed use "Adjust Delay" (alarm clock) (the lower the value the faster the simulation)
* use "Stop Experiment" to stop the experiment
!! ~JamesII
more information on ~JamesII can be obtained [[here|http://wwwmosi.informatik.uni-rostock.de/mosi/projects/cosa/james-ii/]]
!! Jobs
* Please contact us if you're interested in working with us!


!! Student projects
* [[Abstract Interpretation of Metabolic Networks for Improving Gene Knockouts Predictions|http://www.lifl.fr/BioComputing/stages/stagePeptides.txt]]
*[[Lerning Refinements of Metabolic Networks for Improving Gene Knockout Predictions|http://www.lifl.fr/BioComputing/stages/peptides.pdf]]
[[About]]
[[Members & Partners]]
[[Publications]]
[[Job & Project Offers]]
[[Software]]
[[Funding]]


|''Name''|MainTheme|
|''Description''|main theme limiting access of ReadOnly users|

!Author Mode
|PageTemplate|Author.PageTemplate|
|ViewTemplate|Author.ViewTemplate|
|EditTemplate|Author.EditTemplate|
|StyleSheet|StyleSheet|
|ColorPalette|ColorPalette|

!Read-Only Mode
|PageTemplateReadOnly|ReadOnly.PageTemplate|
|ViewTemplateReadOnly|ReadOnly.ViewTemplate|
|EditTemplateReadOnly|ReadOnly.ViewTemplate|
|StyleSheetReadOnly|StyleSheet|
|ColorPalette|ColorPalette|

!StyleSheet
/*{{{*/
#sidebarTabs {
	display: none;
}
/*}}}*/
<!--{{{-->
<link rel='shortcut icon' href='fav.ico'/>
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
!! Members
* [[Céline Kuttler|http://www.cristal.univ-lille.fr/~kuttler]], assistant professor, University of Lille
* [[Cédric Lhoussaine|http://www.cristal.univ-lille.fr/~lhoussai]], group leader, assistant professor, University of Lille
* [[Mirabelle Nebut|http://www.cristal.univ-lille.fr/~nebut]], assistant professor, University of Lille
* [[Joachim Niehren|http://researchers.lille.inria.fr/~niehren]], senior researcher, INRIA 
* [[Cristian Versari|http://www.cristal.univ-lille.fr/~versaric]],  assistant professor, University of Lille

!! ~PhD students, post-docs, ATER, interns
* [[Guillaume Madelaine|http://www.cristal.univ-lille.fr/~guillaume.madelaine/]], ~PhD student (starting 9/2013)
* Émilie Allart, M2 Lille, 6 months internship

!! Partners
* Collaborations within the Iceberg project (From population models to model populations: single cell observation, modeling, and control of gene expression): 
** [[Contraintes team|http://contraintes.inria.fr/]], in particular [[Gregory Batt|http://contraintes.inria.fr/~batt/]], at Inria ~Paris-Rocquencourt
** Laboratoire [[MSC|http://www.msc.univ-paris-diderot.fr/]], in particular [[Pascal Hersen|http://www.msc.univ-paris-diderot.fr/~phersen/513/home.html]], at Paris Diderot
** [[BM2A team|http://cgphimc.univ-lyon1.fr/CgphiMC/Gandrillon/homeEN.php]], at the Centre de génétique et de physiologie moléculaire et cellulaire, Lyon
** Laboratoire [[PPS|http://www.pps.univ-paris-diderot.fr]], in particular [[J. Krivine|http://www.pps.univ-paris-diderot.fr/~jkrivine/homepage/Home.html]], at Paris Diderot
* Yasushi Saka, University of Aberdeen, Scotland:  modeling genetic networks in development. This started as a local collaboration when Yasushi was our office neighbor at the IRI. 
* ~ProBioGem, Polytechnique, Lille: synthetic biology, peptide overproduction in B. Subtilis
* Computer Algebra Team, LIFL, in particular [[Francois Lemaire|http://www.lifl.fr/~lemaire]] and Michel Petitot, whose main focus is on ordinary differential equations. We plan to set up a new research group on biological modeling. Our working group aims at exploring the proper advantages of our complementary approaches to modeling and simulation.
* B. Vandenbunder, IRI: co-supervision of Céline Kuttler's ~PhD thesis (2003-06). 

!! Alumni and past visitors
* Thibault Etienne, M2 Rennes, 6 months internship (2015)
* Tom Dusseaux, L3 Lille, 3 months internship (2015)
* ~Anne-Cécile Lesart, ATER (2013-2014)
* Victor Lanvin, L3 ENS Cachan, 6 weeks internship (2014)
* Quentin Baert, L3 Info Lille, 3 months internship (2014)
* [[Kirill Batmanov|http://www.lifl.fr/~batmanov/]], ~PhD student (2010-2014)
* [[Mathias John|https://sites.google.com/site/aboutmathiasjohn]], postdoctoral fellow (2010-2013)
* Guillaume Krzemianowski, 3 months internship (2013)
* Maxence Vandromme, M2 MOCAD Projet
* Manon Baudel, INSA Rouen, 3rd year internship (2012)
* Mengmeng Tang, Lille 1, Bachelor's internship (2012), double degree program between Lille 1 and Hohai University (Nanjing, China). Moved on to Telecom ~ParisTech.
* Simon Houllier (2010), Master student from Ecole Polytechnique, Paris, visiting for  five months in 2011
* [[Orianne Mazemondet|http://wwwmosi.informatik.uni-rostock.de/diemosiris/Members/orianne]] ~PhD student, Rostock, Germany, visiting for eight months in 2010
* Devashish Ghosh, ~MSc student at the Indian Institute of Technology, Kharagpur, internship with us from May to July 2010.
* Mathias John. ~PhD student, Rostock University. Visiting for three months in 2007/8
* Valerio Passini, ~PhD,  Trento University. Visiting for three months in 2007.
* Denys Duchier. CNRS researcher with us 2005, professor in Orléans since September 2006.
* Gil Payet. Master's student in 2005.
Face à l'évolution des techniques d'investigations massives des réseaux biologiques, la question se pose quant à l'exploitation de la quantité d'information qui en découle. Ceci demande un effort en terme de modélisation qui passe entre autre par la définition de langages formels dans lesquels décrire les données.

Parmi les familles de langages qui ont été proposées, celles héritées des algèbres de processus (k-calcul, brane-calcul, ...) ont montré qu'elles étaient pertinentes pour décrire une biologie moléculaire qualitative, basée sur les interactions protéines-protéines et protéines-membranes.

Outre les motivations liées à l'utilisation de cette famille de langages, je présenterai plusieurs travaux basés sur les notions qu'elle développe. J'aborderai également des problématiques liées à la reconstruction des réseaux de régulation à partir de données partielles, ce qui conduit au développement de techniques complémentaires.
These InterfaceOptions for customising TiddlyWiki are saved in your browser

Your username for signing your edits. Write it as a WikiWord (eg JoeBloggs)

<<option txtUserName>>
<<option chkSaveBackups>> SaveBackups
<<option chkAutoSave>> AutoSave
<<option chkRegExpSearch>> RegExpSearch
<<option chkCaseSensitiveSearch>> CaseSensitiveSearch
<<option chkAnimate>> EnableAnimations
<<option chkSinglePageMode>> Single page mode

----
Also see AdvancedOptions
<!--{{{-->
<div class='header'>
     <div class='gradient' macro='gradient vert #FFFFFF #FFFFFF '>
	<div class='titleLine' >
             <CENTER>
                <img src="logo.jpg" width="649" height="98" />
                <span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
             </CENTER>
	</div>
<div id='topMenu' refresh='content' tiddler='MainMenu'></div>
    </div>
</div>
<div id='bodywrapper'>
<div id='sidebar'>
	<div id='sidebarOptions' refresh='content' 	tiddler='SideBarOptions'></div>
</div>
<div id='displayArea'>
	<div id='messageArea'></div>
	<div id='tiddlerDisplay'></div>
</div>
<div id='contentFooter'>TiddlyWiki</div>
</div>

<!--}}}-->
//(This archive only contains past events until Oct 2010! More recent ones are listed in the calendar of our "About" page.)//
*// Oct 2010//
** Thursday 28, 09:00am: NRPS working group
** Thursday 07, afternoon / Friday 07, morning: [[IRI chromatin days :  Chromatin Remodeling | http://www.iri.cnrs.fr/bn/chromatin_days_2010/index.html]]
** Monday 4, 10:30am: NRPS working group
*// Sept 2010//
** Friday 3rd: Scientific Meeting of IRI, all day! [[program | data/programmeJS2010.pdf]]
** Thursday 30, afternoon: NRPS working group
** Thursday 9: group lunch 
*// August 2010//
** Tue 31: reading group on NRPS with V. Leclere and P. Jacques [[Felnagle EA, Jackson EE, Chan YA, Podevels AM, Berti AD, McMahon MD, Thomas MG. Mol Pharm. 2008 Mar-Apr;5(2):191-211| http://pubs.acs.org.docproxy.univ-lille1.fr/doi/abs/10.1021/mp700137g]]
*//June 2010//
** Tue June 22nd, Francois Boulier
** Tue June 15th, reading group on protein domain recombination, lead by Mirabelle Nebut
* //May 2010//
** Tue May 17th, Celine Kuttler on the community effect in Xenopus 
** Tue May 25th, Michel Petitot
*//March 2010//
** Thursday 25, SBML, Joachim Niehren and Celine Kuttler on SBML.
* //February 2010//
** Thursday 25th, seminar by Oana Andrei, ~PhD, University of Glasgow:   [[From qualitative to quantitative formal methods for biochemical signalling pathways]] 
** working group meetings on modeling and model analysis with Michel and Samuel's approach and tool.
** tutorial by Francois Boulier.
*//January 2010//
** Thursday 28/01, 2pm, LIFL. For those who can join, preceded by commun lunch at Espace culturel at noon.
** Wed Jan 13, 2pm HOO: Ph D defense Asli Ürgüplü-Blumenfeld, Calcul Formel group


!!2009
*//December//
** Dec 12-16, C. Kuttler at Winter Simulation Conference, Austin (Texas)
** Thu Dec 3, 2pm, M3 room 226: "Hamiltonians for numerical simulation: an alternative to Monte Carlo simulations. Part I: examples and introduction." by Michel Petitot. 
** Tue 8: Talk "The Dynamics of Gate-based Gene Networks - from theory to experiments and back", offered by Claudiu Giuraniuc, IRI, salle du conseil.
* //November//
** Thu 12: labwork on Schroedinger's equation, offered by Francois Lemaire
* //October//
** Tue 20: reading group on [["Approximation of Event Probabilities in Noisy Cellular Processes" by F. Didier,T. Henzinger, M. Mateescu, V. Wolf |  http://infoscience.epfl.ch/record/135535]]
** Tue 13: reading group postponed, we'll be finalizing our own papers 
** Tue 6: reading group on  [[A General Computational Method for Robustness Analysis with Applications to Synthetic Gene Networks" by Aurélien Rizk, Grégory Batt, François Fages and Sylvain Soliman | http://pauillac.inria.fr/~fages/Papers/RBFS09ismb.pdf]]
* //September//
** Thu 24, 2-4pm: bioComputing & Calcul Formel, M3, room 226, talk by Michel Petitot on timed Petri nets and Schroedinger's equation
** Mon 14: Yasushi Saka, Interdisciplinary Research Institute, Lille.
*//August//
** //31-Sept 1:// Mirabelle Nebut and Cedric Lhoussaine attending [[ CMSB 2009 |  http://cmsb09.cs.unibo.it ]] in Bologna, Italy.
** working meetings with Michel Petitot and Samuel Vidal.
*//July//
** 19-25: Céline Kuttler attending the [[Growth Modeling Workshop | http://web.me.com/scottgrandison/Growth_Modelling_Workshop/Main.html]] in Norwich, UK
*//June//
**8-13: Cristian Versari from Bologna was visiting us.
* //May//
** //14-16// We attended the first international conference [[Morphogenesis in Living System |http://rnsc.fr/MLS-2009]]
** //14:// Celine Kuttler presented our paper "Rule based modeling of transcriptional attenuation at the tryptophan operon" at the LIFL seminar
** //5://[[Fabien Tarissan|http://www.lix.polytechnique.fr/~tarissan/index_en.html]]  visited us for a day, with a talk  [[Méthodes formelles et modélisation des réseaux biologiques|Abstract Tarissan May2009]].
* //April//
** 9-10 -- [[Sylvain Pradalier|http://www.lix.polytechnique.fr/Labo/Sylvain.Pradalier]] was visiting us.
* //January//
** 19 -- Reading group on [[Scalable simulation of cellular signaling networks|http://www.pps.jussieu.fr/~danos/pdf/scalability.pdf]].
** 1 -- Our group moved to the [[Interdisciplinary Research Institute|http://iri.ibl.fr/]]! 

!! 2008
* //December// 
** [[Mathias John|http://wwwmosi.informatik.uni-rostock.de/mosi/Members/mj069]] will be visiting from 30th Nov. to 4th Dec.
* //November//
** 26 -- Reading group on //[[Slow-Scale Stochastic Simulation Algorithm | http://www.ncbi.nlm.nih.gov/pubmed/15638651]]//, part 2.
** 19 -- Reading group on //[[Slow-Scale Stochastic Simulation Algorithm | http://www.ncbi.nlm.nih.gov/pubmed/15638651]]//, part 1.
* //March//
** 3-4 -- [[Cristian Versari|http://www.cs.unibo.it/~versari]] is visiting us again! 
* //February//
** 21 -- [[Cristian Versari|http://www.cs.unibo.it/~versari/]], University of Bologna, is giving a talk on //A core calculus for biochemical modelling with compartments//. 
* //January//
** 17 -- [[François Boulier|http://www2.lifl.fr/~boulier]]. Introduction to Differential Algebra. 

!! 2007
* //December//
** 14 -- Reading group on //[[Gene Regulation at the Single-Cell Level|http://www.sciencemag.org/cgi/content/full/307/5717/1962]]//, Nitzan Rosenfled, et al.
* //November//
** 29 -- Valerio Passini, University of Trento. //Adaptative evolution of the heat shock response in antarctic ciliates//.
** 15 -- [[Cédric Lhoussaine|http://www.lifl.fr/~lhoussai]]. Reading group on Luca Cardelli's paper //[[From Processes to ODEs by Chemistry|| http://lucacardelli.name/Bibliography.htm#ProcessesToODEs]]//.
** 8 -- [[François Boulier|http://www2.lifl.fr/~boulier]]. ~ODEs, steady states, bifurcations, Gröbner bases, and all that. 
* //October//
** 25 -- [[Mirabelle Nebut|http://www2.lifl.fr/~nebut]]. Reading group on //rule based modelling// via [[BioNetGen|http://bionetgen.org/index.php/Main_Page]].
* //September//
** 27 -- [[Joachim Niehren|http://www2.lifl.fr/~niehren]]. Spico in practice...
** 13 -- [[Mathias John|http://wwwmosi.informatik.uni-rostock.de/mosi/Members/mj069]], University of Rostock. //A Spatial Extension to the Pi Calculus//. 
<html>
<iframe src="http://smarthal.lille.inria.fr/?author=&labos_exp=421322%3Bbiocomputing&annee_publideb=&annee_publifin=&updatecache=yes&query=&title=&inputjournal=&inputotherjournal=&inputconference=&inputotherconference=&inputbook=&inputotherbook=&inputinvited=&inputotherinvited=&inputthesis=&css=http%3A%2F%2Fwww.lifl.fr%2FBioComputing%2FsmarthalStyle.css" style=" border-width:0 " width="700" height="600" frameborder="0" scrolling="yes"></iframe>
<a href="http://smarthal.lille.inria.fr/?author=&labos_exp=421322%3Bbiocomputing&annee_publideb=&annee_publifin=&updatecache=yes&query=&title=&inputjournal=&inputotherjournal=&inputconference=&inputotherconference=&inputbook=&inputotherbook=&inputinvited=&inputotherinvited=&inputthesis=" target="_blank"  ><P ALIGN=Right> ... or on <b> <i>  SmartHAL </i> </b>  directly </a>
</html>
!!This is an implementation in Scala and Java of the work presented in
* Mathias John, Cédric Lhoussaine, Joachim Niehren, and Cristian Versari. Biochemical reaction rules with constraints. In Proceedings of the European Symposium on Programming (ESOP), volume 6602/2011 of LNCS, pages 338–357. Springer, 2011
* Note, however, that in this implementation the simulator does make use of constraint programming
* the graphical user interface was implemented based on the [[JamesII|http://wwwmosi.informatik.uni-rostock.de/mosi/projects/cosa/james-ii/]] library
* parsing is implemented in [[ANTLR|http://www.antlr.org]]
!!Requirements
* programming language: Java JDK version 1.6 or higher
* operating system: developed under recent Windows system
!! <html>
<a href="reactC.rar", type="application/octet-stream">Download React(C)</a>
</html>
!!Running React(C)
* extract contents of file
* switch to where ever you extracted the contents to
* from there you call the following command from a command line or terminal: java -jar  reactC.jar
!!Simulation
* load the model provided in the same folder as the implementation 
* in the "duration" field you can change the simulation duration
* press play
* after simulation has finished you can retrieve a file with the simulation results in the same location as the implementation
Options are saved in your browser:
<<option chkRegExpSearch>> Regular expression search
<<option chkCaseSensitiveSearch>> Case sensitive search
<<option chkAnimate>> Enable animations
<<option chkSinglePageMode>> Single page mode
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='ReadOnly.SideBarOptions'></div>
<div id='sidebarTabs' refresh='macro' force='true' macro='slider chkSideBarTabs ReadOnly.SideBarTabs "index »" "display lists of tiddlers"'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<<search>><<closeAll>><<permaview>><<slider chkSliderOptionsPanel ReadOnly.OptionsPanel "options »" "Change TiddlyWiki options">>
<<tabs txtMainTab "All" "All entries" Index.All "AaC08" "Algorithmique Avancée et Complexité 2008" Index.AaC08>>
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<!--div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div-->
<!--div class='tagging' macro='tagging'></div-->
<!--div class='tagged' macro='tags'></div-->
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
!! A Uniform Approach for Stochastic Modeling with Spatial Aspects in Systems Biology

Advisors: [[Cédric Lhoussaine|http://www.lifl.fr/~lhoussai]] and [[Joachim Niehren|http://researchers.lille.inria.fr/~niehren/]]

Experimental techniques in biological research are increasingly sophisticated, and allow to accumulate increasingly sharp knowledge. However, the understanding and the representation of cells and living matter remain fragmented, and do not report all interactions and interdependencies between biological mechanisms. Systems Biology tries to overcome this problem. Its long-term objective is to provide the theoretical and practical tools for describing, studying and predicting the behavior of biological systems. To this end, it is necessary to integrate into formal models the increasing and various experimental data available until now. This formalization subsequently allows the simulation and the qualitative analysis of models, and thus the observation and the in-silico study of the properties of biological systems. The predicted behaviors may themselves be validated experimentally, if necessary.

Much effort within Systems Biology concentrates on gene regulatory networks. Essential genomic functions are strongly influenced by low number of biological actors, causing stochastic phenomena. The knowledge in this domain remains widely insufficient despite of novel experimental techniques, that allow to collect data from single cells. For example, recent work suggested that the non-uniform spatial distributions of elements in eukaryotic nucleus plays an important role in gene regulation [5]. Today, it is impossible to unravel the genomic functions of space solely by experimental methods. It is thus necessary to develop modeling tools and simulation to study such systems in silico.

An established computational approach for the modeling of gene networks consists in considering the cell as an executable entity, that is a system of concurrent agents with programmable interactions. Thus, a model is a concurrent program and simulating the model means to execute the program. This approach was initiated by A. Regev and E. Shapiro [6] within the π-calculus. It was followed by many others ([1, 4], etc.), using process algebras extended with stochastic control. Such approaches benefit from solid theoretical foundations and formal, unambiguous, semantics that permit the study and the proof of properties of systems.

However, the π-calculus approach remains difficult to use for biologists who are not familiar with object-centered programming, that is in which the interaction capabilities are described for every agent independently of other. That is why we are currently focusing on a more intuitive alternative which preserves the expressiveness of concurrent and stochastic control. This alternative, commonly called ruled-base programming, is based on the rewriting of multi-sets of parametrized terms. It remains intuitively close to chemical reactions which are familiar biologists [2, 3].

In this project, we propose to investigate the design and implementation a novel stochastic modeling language. Its goal is to allow to address any type of gene network with a concurrent control, that depends on the position of biological actors. The way positions are described should remain independent of any type of spatial data. We hope to end with a unified framework, accessible to biologists, which extends on existing rule-based approaches while proposing compartments (with variable volume). The existing checking and prediction methods will be extended to this new language. We shall apply our language to specific case studies of cellular biology with spatial aspects in eukaryotic gene regulation: position of chromosomes in the nucleus, appearance and preservation of compartments, cross-talk between chromosomes, etc.

This project will held in collaboration with biologists of the [[Interdisciplinary Research Institute|http://iri.ibl.fr]] (IRI, Villeneuve d’Ascq). This project is partly funded by the ANR “jeunes chercheurs(es)”.

!!Background

Systems biology, modeling and simulation, gene regulation, semantics of programming languages (CAML, ...), compilation, lambda-calculus, π-calculus, typing, logic, model checking.

!!References

[1] Luca Cardelli. //Abstract machines of systems biology//. Transactions on Computational Systems Biology, III:145–168, 2005. LNBI vol 3737.
[2] Nathalie ~Chabrier-Rivier, Francois Fages, and Sylvain Soliman. //The biochemical abstract machine ~BioCham//. In Proceedings of CMSB 2004, volume 3082 of Lecture Notes in Bioinformatics, pages 172–191, 2005.
[3] Vincent Danos and Cosimo Laneve. //Formal molecular biology//. Theoretical Computer Science, 325(1):69–110, 2004.
[4] Céline Kuttler, Cédric Lhoussaine, and Joachim Niehren. //A stochastic pi-calculus for concurrent objects//. In Second International Conference on Algebraic Biology, number 4545 in Lecture Notes in Computer Science, pages 232–246. ~Springer-Verlag, 2007.
[5] Tom Misteli. //Beyond the sequence: Cellular organization of genome function.// Cell, 128:787–800, 2007.
[6] Aviv Regev and Ehud Shapiro. //Cells as computation//. Nature, 419:343, 2002.
/***
This CSS by DaveBirss.
***/
/*{{{*/


.tabSelected {
 background: #fff;
}

.tabUnselected {
 background: #eee;
}

#sidebar {
 color: #000;
 background: transparent; 
}

#sidebarOptions {
 background: #fff;
}

#sidebarOptions input {
	border: 1px solid #ccc;
}

#sidebarOptions input:hover, #sidebarOptions input:active,  #sidebarOptions input:focus {
	border: 1px solid #000;
}

#sidebarOptions .button {
 color: #999;
}

#sidebarOptions .button:hover {
 color: #000;
 background: #fff;
 border-color:white;
}

#sidebarOptions .button:active {
 color: #000;
 background: #fff;
}

#sidebarOptions .sliderPanel {
 background: transparent;
}

#sidebarOptions .sliderPanel A {
 color: #999;
}

#sidebarOptions .sliderPanel A:hover {
 color: #000;
 background: #fff;
}

#sidebarOptions .sliderPanel A:active {
 color: #000;
 background: #fff;
}

.sidebarSubHeading {
 color: #000;
}

#sidebarTabs {`
 background: #fff
}

#sidebarTabs .tabSelected {
 color: #000;
 background: #fff;
 border-top: solid 1px #ccc;
 border-left: solid 1px #ccc;
 border-right: solid 1px #ccc;
 border-bottom: none;
}

#sidebarTabs .tabUnselected {
 color: #999;
 background: #eee;
 border-top: solid 1px #ccc;
 border-left: solid 1px #ccc;
 border-right: solid 1px #ccc;
 border-bottom: none;
}

#sidebarTabs .tabContents {
 background: #fff;
}


#sidebarTabs .txtMoreTab .tabSelected {
 background: #fff;
}

#sidebarTabs .txtMoreTab .tabUnselected {
 background: #eee;
}

#sidebarTabs .txtMoreTab .tabContents {
 background: #fff;
}

#sidebarTabs .tabContents .tiddlyLink {
 color: #999;
 border:none;
}

#sidebarTabs .tabContents .tiddlyLink:hover {
 background: #fff;
 color: #000;
 border:none;
}

#sidebarTabs .tabContents {
 color: #000;
}

#sidebarTabs .button {
 color: #666;
}

#sidebarTabs .tabContents .button:hover {
 color: #000;
 background: #fff;
}

#sidebar {color:#999;}
/*}}}*/
/***
|Name|SinglePageModePlugin|
|Source|http://www.TiddlyTools.com/#SinglePageModePlugin|
|Documentation|http://www.TiddlyTools.com/#SinglePageModePluginInfo|
|Version|2.9.5|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides|Story.prototype.displayTiddler(), Story.prototype.displayTiddlers()|
|Options|##Configuration|
|Description|Show tiddlers one at a time with automatic permalink, or always open tiddlers at top/bottom of page.|
This plugin allows you to configure TiddlyWiki to navigate more like a traditional multipage web site with only one tiddler displayed at a time.
!!!!!Documentation
>see [[SinglePageModePluginInfo]]
!!!!!Configuration
<<<
<<option chkSinglePageMode>> Display one tiddler at a time
><<option chkSinglePagePermalink>> Automatically permalink current tiddler
><<option chkSinglePageKeepFoldedTiddlers>> Don't close tiddlers that are folded
><<option chkSinglePageKeepEditedTiddlers>> Don't close tiddlers that are being edited
<<option chkTopOfPageMode>> Open tiddlers at the top of the page
<<option chkBottomOfPageMode>> Open tiddlers at the bottom of the page
<<option chkSinglePageAutoScroll>> Automatically scroll tiddler into view (if needed)

Notes:
* The "display one tiddler at a time" option can also be //temporarily// set/reset by including a 'paramifier' in the document URL: {{{#SPM:true}}} or {{{#SPM:false}}}.
* If more than one display mode is selected, 'one at a time' display takes precedence over both 'top' and 'bottom' settings, and if 'one at a time' setting is not used, 'top of page' takes precedence over 'bottom of page'.
* When using Apple's Safari browser, automatically setting the permalink causes an error and is disabled.
<<<
!!!!!Revisions
<<<
2008.06.12 [2.9.5] corrected 'scroll to top of page' logic in auto-scroll handling
| Please see [[SinglePageModePluginInfo]] for previous revision details |
2005.08.15 [1.0.0] Initial Release.  Support for BACK/FORWARD buttons adapted from code developed by Clint Checketts.
<<<
!!!!!Code
***/
//{{{
version.extensions.SinglePageModePlugin= {major: 2, minor: 9, revision: 5, date: new Date(2008,6,12)};
//}}}
//{{{
config.paramifiers.SPM = { onstart: function(v) {
	config.options.chkSinglePageMode=eval(v);
	if (config.options.chkSinglePageMode && config.options.chkSinglePagePermalink && !config.browser.isSafari) {
		config.lastURL = window.location.hash;
		if (!config.SPMTimer) config.SPMTimer=window.setInterval(function() {checkLastURL();},1000);
	}
} };
//}}}
//{{{
if (config.options.chkSinglePageMode==undefined)
	config.options.chkSinglePageMode=true;
if (config.options.chkSinglePagePermalink==undefined)
	config.options.chkSinglePagePermalink=true;
if (config.options.chkSinglePageKeepFoldedTiddlers==undefined)
	config.options.chkSinglePageKeepFoldedTiddlers=false;
if (config.options.chkSinglePageKeepEditedTiddlers==undefined)
	config.options.chkSinglePageKeepEditedTiddlers=false;
if (config.options.chkTopOfPageMode==undefined)
	config.options.chkTopOfPageMode=false;
if (config.options.chkBottomOfPageMode==undefined)
	config.options.chkBottomOfPageMode=false;
if (config.options.chkSinglePageAutoScroll==undefined)
	config.options.chkSinglePageAutoScroll=true;
//}}}
//{{{
config.SPMTimer = 0;
config.lastURL = window.location.hash;
function checkLastURL()
{
	if (!config.options.chkSinglePageMode)
		{ window.clearInterval(config.SPMTimer); config.SPMTimer=0; return; }
	if (config.lastURL == window.location.hash) return; // no change in hash
	var tids=decodeURIComponent(window.location.hash.substr(1)).readBracketedList();
	if (tids.length==1) // permalink (single tiddler in URL)
		story.displayTiddler(null,tids[0]);
	else { // restore permaview or default view
		config.lastURL = window.location.hash;
		if (!tids.length) tids=store.getTiddlerText("DefaultTiddlers").readBracketedList();
		story.closeAllTiddlers();
		story.displayTiddlers(null,tids);
	}
}

if (Story.prototype.SPM_coreDisplayTiddler==undefined)
	Story.prototype.SPM_coreDisplayTiddler=Story.prototype.displayTiddler;
Story.prototype.displayTiddler = function(srcElement,tiddler,template,animate,slowly)
{
	var title=(tiddler instanceof Tiddler)?tiddler.title:tiddler;
	var tiddlerElem=document.getElementById(story.idPrefix+title); // ==null unless tiddler is already displayed
	var opt=config.options;
	var single=opt.chkSinglePageMode && !startingUp;
	var top=opt.chkTopOfPageMode && !startingUp;
	var bottom=opt.chkBottomOfPageMode && !startingUp;
	if (single) {
		story.forEachTiddler(function(tid,elem) {
			// skip current tiddler and, optionally, tiddlers that are folded.
			if (	tid==title
				|| (opt.chkSinglePageKeepFoldedTiddlers && elem.getAttribute("folded")=="true"))
				return;
			// if a tiddler is being edited, ask before closing
			if (elem.getAttribute("dirty")=="true") {
				if (opt.chkSinglePageKeepEditedTiddlers) return;
				// if tiddler to be displayed is already shown, then leave active tiddler editor as is
				// (occurs when switching between view and edit modes)
				if (tiddlerElem) return;
				// otherwise, ask for permission
				var msg="'"+tid+"' is currently being edited.\n\n";
				msg+="Press OK to save and close this tiddler\nor press Cancel to leave it opened";
				if (!confirm(msg)) return; else story.saveTiddler(tid);
			}
			story.closeTiddler(tid);
		});
	}
	else if (top)
		arguments[0]=null;
	else if (bottom)
		arguments[0]="bottom";
	if (single && opt.chkSinglePagePermalink && !config.browser.isSafari) {
		window.location.hash = encodeURIComponent(String.encodeTiddlyLink(title));
		config.lastURL = window.location.hash;
		document.title = wikifyPlain("SiteTitle") + " - " + title;
		if (!config.SPMTimer) config.SPMTimer=window.setInterval(function() {checkLastURL();},1000);
	}
	if (tiddlerElem && tiddlerElem.getAttribute("dirty")=="true") { // editing... move tiddler without re-rendering
		var isTopTiddler=(tiddlerElem.previousSibling==null);
		if (!isTopTiddler && (single || top))
			tiddlerElem.parentNode.insertBefore(tiddlerElem,tiddlerElem.parentNode.firstChild);
		else if (bottom)
			tiddlerElem.parentNode.insertBefore(tiddlerElem,null);
		else this.SPM_coreDisplayTiddler.apply(this,arguments); // let CORE render tiddler
	} else
		this.SPM_coreDisplayTiddler.apply(this,arguments); // let CORE render tiddler
	var tiddlerElem=document.getElementById(story.idPrefix+title);
	if (tiddlerElem&&opt.chkSinglePageAutoScroll) {
		// scroll to top of page or top of tiddler
		var isTopTiddler=(tiddlerElem.previousSibling==null);
		var yPos=isTopTiddler?0:ensureVisible(tiddlerElem);
		// if animating, defer scroll until 200ms after animation completes
		var delay=opt.chkAnimate?config.animDuration+200:0;
		setTimeout("window.scrollTo(0,"+yPos+")",delay); 
	}
}

if (Story.prototype.SPM_coreDisplayTiddlers==undefined)
	Story.prototype.SPM_coreDisplayTiddlers=Story.prototype.displayTiddlers;
Story.prototype.displayTiddlers = function() {
	// suspend single/top/bottom modes when showing multiple tiddlers
	var opt=config.options;
	var saveSPM=opt.chkSinglePageMode; opt.chkSinglePageMode=false;
	var saveTPM=opt.chkTopOfPageMode; opt.chkTopOfPageMode=false;
	var saveBPM=opt.chkBottomOfPageMode; opt.chkBottomOfPageMode=false;
	this.SPM_coreDisplayTiddlers.apply(this,arguments);
	opt.chkBottomOfPageMode=saveBPM;
	opt.chkTopOfPageMode=saveTPM;
	opt.chkSinglePageMode=saveSPM;
}
//}}}
/***
|Name|SinglePageModePluginInfo|
|Source|http://www.TiddlyTools.com/#SinglePageModePlugin|
|Documentation|http://www.TiddlyTools.com/#SinglePageModePluginInfo|
|Version|2.9.5|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|documentation|
|Requires||
|Overrides||
|Description|Documentation for SinglePageModePlugin|
Normally, as you click on the links in TiddlyWiki, more and more tiddlers are displayed on the page. The order of this tiddler display depends upon when and where you have clicked. Some people like this non-linear method of reading the document, while others have reported that when many tiddlers have been opened, it can get somewhat confusing.  SinglePageModePlugin allows you to configure TiddlyWiki to navigate more like a traditional multipage web site with only one item displayed at a time.
!!!!!Usage
<<<
When the plugin is enabled, only one tiddler will be displayed at a time and the browser window's titlebar is updated to include the current tiddler title.  The browser's location URL is also updated with a 'permalink' for the current tiddler so that it is easier to create a browser 'bookmark' for the current tiddler.  Alternatively, even when displaying multiple tiddlers //is// permitted, you can still reduce the potential for confusion by forcing  tiddlers to always open at the top (or bottom) of the page instead of being displayed following the tiddler containing the link that was clicked.
<<<
!!!!!Configuration
<<<
<<option chkSinglePageMode>> Display one tiddler at a time
><<option chkSinglePagePermalink>> Automatically permalink current tiddler
><<option chkSinglePageKeepFoldedTiddlers>> Don't close tiddlers that are folded
><<option chkSinglePageKeepEditedTiddlers>> Don't close tiddlers that are being edited
<<option chkTopOfPageMode>> Open tiddlers at the top of the page
<<option chkBottomOfPageMode>> Open tiddlers at the bottom of the page
<<option chkSinglePageAutoScroll>> Automatically scroll tiddler into view (if needed)

Notes:
* {{block{
The "display one tiddler at a time" option can also be //temporarily// set/reset by including a 'paramifier' in the document URL: {{{#SPM:true}}} or {{{#SPM:false}}}. You can also use {{{SPM:expression}}}, where 'expression' is any javascript statement that evaluates to true or false.  This allows you to create hard-coded links in other documents that can selectively enable/disable the use of this option based on various programmatic conditions, such as the current username. For example, using
&nbsp;&nbsp;&nbsp;{{{#SPM:config.options.txtUserName!="SomeName"}}}
enables 'one tiddler at a time' display for all users //other than// "~SomeName")}}}
* If more than one display mode is selected, 'one at a time' display takes precedence over both 'top' and 'bottom' settings, and if 'one at a time' setting is not used, 'top of page' takes precedence over 'bottom of page'.
* When using Apple's Safari browser, automatically setting the permalink causes an error and is disabled.
<<<
!!!!!Revisions
<<<
2008.06.12 [2.9.5] corrected 'scroll to top of page' logic in auto-scroll handling
2008.06.11 [2.9.4] added chkSinglePageKeepEditedTiddlers option
2008.06.05 [2.9.3] in displayTiddler(), bypass single/top/bottom mode handling if startingUp.  Allows multiple tiddlers to be displayed during startup processing (e.g., #story:DefaultTiddlers), even if single/top/bottom mode is enabled.
2008.04.18 [2.9.2] in displayTiddler() and checkLastURL(), handling for Unicode in tiddler titles (remove explicit conversion between Unicode and UTF, as this is apparently done automatically by encode/decodeURIComponent, resulting in double-encoding!
2008.04.08 [2.9.1] don't automatically add options to AdvancedOptions shadow tiddler
2008.04.02 [2.9.0] in displayTiddler(), when single-page mode is in use and a tiddler is being edited, ask for permission to save-and-close that tiddler, instead of just leaving it open.
2008.03.29 [2.8.3] in displayTiddler(), get title from tiddler object (if needed).  Fixes errors caused when calling function passes a tiddler *object* instead of a tiddler *title*
2008.03.14 [2.8.2] in displayTiddler(), if editing specified tiddler, just move it to top/bottom of story *without* re-rendering (prevents discard of partial edits).
2008.03.06 [2.8.1] in paramifier handler, start 'checkURL' timer if chkSinglePageMode is enabled
2008.03.06 [2.8.0] added option, {{{config.options.chkSinglePageKeepFoldedTiddlers}}}, so folded tiddlers won't be closed when using single-page mode.  Also, in checkURL(), if hash is a ''permaview'' (e.g., "#foo bar baz"), then display multiple tiddlers rather than attempting to display "foo bar baz" as a single tiddler
2008.03.05 [2.7.0] added support for "SPM:" URL paramifier
2008.03.01 [2.6.0] in hijack of displayTiddler(), added 'title' argument to closeAllTiddlers() so that target tiddler isn't closed-and-reopened if it was already displayed.  Also, added config.options.chkSinglePageAutoScrolloption to bypass automatic 'scroll into view' logic (note: core still does it's own ensureVisible() handling)
2007.12.22 [2.5.3] in checkLastURL(), use decodeURIComponent() instead of decodeURI so that tiddler titles with commas (and/or other punctuation) are correctly handled.
2007.10.26 [2.5.2] documentation cleanup
2007.10.08 [2.5.1] in displayTiddler(), when using single-page or top-of-page mode, scrollTo(0,0) to ensure that page header is in view.
2007.09.13 [2.5.0] for TPM/BPM modes, don't force tiddler to redisplay if already shown.  Allows transition between view/edit or collapsed/view templates, without repositioning displayed tiddler.
2007.09.12 [2.4.0] added option to disable automatic permalink feature.  Also, Safari is now excluded from permalinking action to avoid bug where tiddlers don't display after hash is updated.
2007.03.03 [2.3.1] fix typo when adding BPM option to AdvancedOptions (prevented checkbox from appearing)
2007.03.03 [2.3.0] added support for BottomOfPageMode (BPM) based on request from DaveGarbutt
2007.02.06 [2.2.3] in Story.prototype.displayTiddler(), use convertUnicodeToUTF8() for correct I18N string handling when creating URL hash string from tiddler title (based on bug report from BidiX)
2007.01.08 [2.2.2] use apply() to invoke hijacked core functions
2006.07.04 [2.2.1] in hijack for displayTiddlers(), suspend TPM as well as SPM so that DefaultTiddlers displays in the correct order.
2006.06.01 [2.2.0] added chkTopOfPageMode (TPM) handling
2006.02.04 [2.1.1] moved global variable declarations to config.* to avoid FireFox 1.5.0.1 crash bug when assigning to globals
2005.12.27 [2.1.0] hijack displayTiddlers() so that SPM can be suspended during startup while displaying the DefaultTiddlers (or #hash list).  Also, corrected initialization for undefined SPM flag to "false", so default behavior is to display multiple tiddlers
2005.12.27 [2.0.0] Update for TW2.0
2005.11.24 [1.1.2] When the back and forward buttons are used, the page now changes to match the URL.  Based on code added by Clint Checketts
2005.10.14 [1.1.1] permalink creation now calls encodeTiddlyLink() to handle tiddler titles with spaces in them
2005.10.14 [1.1.0] added automatic setting of window title and location bar ('auto-permalink').  feature suggestion by David Dickens.
2005.10.09 [1.0.1] combined documentation and code in a single tiddler
2005.08.15 [1.0.0] Initial Release
<<<
Programming Languages for Biological Modeling and Simulation
bioComputing
* [[React(C)|React(C) Implementation]]: an implementation of React(C). Since January 29, 2013. Implemented by Mathias John.
* [[James-Imp-Pi|Imperative Pi Implementation in JamesII]]: an implementation of the imperative pi-calculus. Since September 28, 2009. Implemented by Mathias John and our callaborator Stefan Rybacky from  Rostock University.
* [[SpiCO|http://spico.gforge.inria.fr]]: The Stochastic pi-Calculus for Concurrent Objects. Implementation in [[Mozart-Oz|http://www.mozart-oz.org]]. Since 27th of August 2007. 
[[SideBarWG]]

/***
!Top Menu Styles
***/
/*{{{*/
#topMenu br {display:none; }
#topMenu { background: #000 ; color:#fff;padding: 1em 1em;}
/*}}}*/

/***
!General
***/
/*{{{*/
body {
 background: #444;
 margin: 0px auto;
}

 #contentWrapper{
 background: #fff;
 border: 0;
 margin: 0 auto;
 width: 1000px;
 padding:0;
}
/*}}}*/

/***
!Header rules
***/
/*{{{*/
.titleLine{
 margin: 40px auto 0em ;
margin-left:1.5em;
margin-bottom: 40px;
 padding: 0;
 text-align: left;
 color: #fff;
}

.siteTitle {
	font-size: 2em;
        font-weight: bold;
}

.siteSubtitle {
	font-size: 2em;
        display: block;
        color: #000;
}

.gradient {margin: 0 auto;}



.header {
 background: #fff; 
 margin: 0 auto;
 padding:0 12px;
 width: 976px;
}
/*}}}*/

/***
!Display Area
***/
/*{{{*/
#bodywrapper {margin:0 12px; padding:0;background:#fff; height:1%}

#displayArea{
 margin: 0em 16em 0em 1em;
 text-align: left;
}

.tiddler {
	padding: 1em 1em 0em 0em;
}



h1,h2,h3,h4,h5 { color: #000; background: transparent; padding-bottom:2px; border-bottom: 1px dotted #666; }
.title {color:black; font-size:1.8em; border-bottom:1px solid #333; padding-bottom:0.3px;}
.subtitle { font-size:90%; color:#ccc; padding-left:0.25em; margin-top:0.1em; }
.externalLink {color:#8cc63f;}

.shadow .title {
	color: #aaa;
}

.tagClear{
	clear: none; 
}

* html .viewer pre {
	margin-left: 0em;
}

* html .editor textarea, * html .editor input {
	width: 98%;
}

.tiddler {margin-bottom:1em; padding-bottom:0em;}


.toolbar .button {color:#bbb; border:none;}
.toolbar .button:hover, .toolbar .highlight, .toolbar .marked, .toolbar a.button:active {background:transparent; color:#111; border:none; text-decoration:underline;}

#sidebar .highlight, #sidebar .marked {background:transparent;}

.tagging, .tagged {
	border: 1px solid #eee;
	background-color: #F7F7F7;
}

.selected .tagging, .selected .tagged {
	background-color: #eee;
	border: 1px solid #bbb;
}

 .tagging .listTitle, .tagged .listTitle {
	color: #bbb;
}

.selected .tagging .listTitle, .selected .tagged .listTitle {
	color: #222; 
}

.tagging .button:hover, .tagged .button:hover {
		border: none; background:transparent; text-decoration:underline; color:#000;
}

.tagging .button, .tagged .button {
		color:#aaa;
}

.selected .tagging .button, .selected .tagged .button {
		color:#000;
}

.viewer blockquote {
	border-left: 3px solid #000;
}

.viewer pre, .viewer code {
	border: 1px dashed #ccc;
	background: #eee;}

.viewer hr {
	border: 0;
	border-top: solid 1px #333;
 margin: 0 8em;
	color: #333;
}


.highlight, .marked {background:transparent; color:#111; border:none; text-decoration:underline;}

.viewer .highlight, .viewer .marked {text-decoration:none;}

#sidebarTabs .highlight, #sidebarTabs .marked {color:#000; text-decoration:none;}

.tabSelected {
 color: #000;
 background: #fff;
 border-top: solid 1px #ccc;
 border-left: solid 1px #ccc;
 border-right: solid 1px #ccc;
 border-bottom: none;
}

.viewer .tabSelected:hover{color:#000;}

.viewer .tabSelected {font-weight:bold;}

.tabUnselected {
 color: #999;
 background: #eee;
 border-top: solid 1px #ccc;
 border-left: solid 1px #ccc;
 border-right: solid 1px #ccc;
 border-bottom: solid 1px #ccc;
 padding-bottom:1px;
}

.tabContents {
 background: #fff;
  color: #000;
}
/*}}}*/
/***
!!!Tables
***/
/*{{{*/
.viewer table {
	border: 1px solid #000;
}

.viewer th, thead td {
	background: #000;
	border: 1px solid #000;
	color: #fff;
}

.viewer td, .viewer tr {
	border: 1px solid #111;
}
/*}}}*/


/***
!!!Editor area
***/
/*{{{*/
.editor input, .editor textarea {
	border: 1px solid #ccc;
}

.editor {padding-top:0.3em;}

.editor textarea:focus, .editor input:focus {
	border: 1px solid #333;
}
/*}}}*/

/***
!Sidebar
***/
/*{{{*/
#sidebar{
position:relative;
float:right;
margin-bottom:1em;
display:inline;
width: 16em;
}

#sidebarOptions .sliderPanel {
	background: #eee; border:1px solid #ccc;
}

/*}}}*/

/***
!Body Footer rules
***/
/*{{{*/
#contentFooter {
 text-align: left;
 clear: both;
 color:#fff;
 background: #000;
 padding: 1em 2em;
font-weight:bold;
}

/*}}}*/
/***
!Link Styles
***/
/*{{{*/
a{
	color: #000;
}

a:hover{
        color: #FF6600;
        background:#fff;
}


.button {
	color: #000;
	border: 1px solid #fff;
}

.button:hover {
	color: #fff;
	background: #ff8614;
	border-color: #000;
}

.button:active {
	color: #fff;
	background: #ff8614;
	border: 1px solid #000;
}

.tiddlyLink {border-bottom: 1px dotted #000;}
.tiddlyLink:hover {border-bottom: 1px dotted #FF6600;} 

.titleLine a {border-bottom: 1px dotted #FF9900;}

.titleLine a:hover {border-bottom: 1px dotted #fff;}

.siteTitle a, .siteSubtitle a{
 color: #fff;
}

.viewer .button {border: 1px solid #ff8614; font-weight:bold;}
.viewer .button:hover, .viewer .marked, .viewer .highlight{background:#ff8614; color:#fff; font-weight:bold; border: 1px solid #000;}

#topMenu .button, #topMenu .tiddlyLink {
 margin-left:0.5em; margin-right:0.5em;
 padding-left:3px; padding-right:3px;
 color:#8cc63f;
}
#topMenu .button:hover, #topMenu .tiddlyLink:hover { background:#000; color:#FF8814}

#topMenu a{border:none;}
/*}}}*/

/***
!Message Area /%=================================================%/
***/
/*{{{*/
#messageArea {
	border: 4px dotted #ff8614;
	background: #000;
	color: #fff;
        font-size:90%;
}

#messageArea .button {
	padding: 0.2em;
	color: #000;
	background: #fff;
        text-decoration:none;
        font-weight:bold;
        border:1px solid #000; 
}

#messageArea a {color:#fff;}

#messageArea a:hover {color:#ff8614; background:transparent;}

#messageArea .button:hover {background: #FF8614; color:#fff; border:1px solid #fff; }

/*}}}*/

/***
!Popup /%=================================================%/
***/
/*{{{*/
.popup {
	background: #ff8814;
	border: 1px solid #333;
}

.popup hr {
	color: #333;
	background: #333;
	border-bottom: 1px;
}

.popup li.disabled {
	color: #333;
}

.popup li a, .popup li a:visited {
	color: #eee;
	border: none;
}

.popup li a:hover {
	background: #ff8614;
	color: #fff;
	border: none;
        text-decoration:underline;
}
/*}}}*/

.blog h2, .blog h3, .blog h4{
  margin:0;
  padding:0;
border-bottom:none;
}
.blog {margin-left:1.5em;}  


.blog .excerpt {
  margin:0;
margin-top:0.3em;
  padding: 0;
  margin-left:1em;
  padding-left:1em;
  font-size:90%;
  border-left:1px solid #ddd;
}

#tiddlerWhatsNew h1, #tiddlerWhatsNew h2 {border-bottom:none;}
div[tags~="RecentUpdates"], div[tags~="lewcidExtension"] {margin-bottom: 2em;}

#hoverMenu  .button, #hoverMenu  .tiddlyLink {border:none; font-weight:bold; background:#f37211; color:#fff; padding:0 5px; float:right; margin-bottom:4px;}
#hoverMenu .button:hover, #hoverMenu .tiddlyLink:hover {font-weight:bold; border:none; color:#f37211; background:#000; padding:0 5px; float:right; margin-bottom:4px;}

#topMenu .fontResizer {float:right;}

#topMenu .fontResizer .button{border:1px solid #000;}
#topMenu .fontResizer .button:hover {border:1px solid #f37211; color:#fff;}
#sidebarTabs .txtMainTab .tiddlyLinkExisting {
 font-weight: normal;
 font-style: normal;
}

#sidebarTabs .txtMoreTab .tiddlyLinkExisting {
 font-weight: bold;
 font-style: normal;
}

.blog h2, .blog h3, .blog h4{
  margin:0;
  padding:0;
border-bottom:none;
}
.blog {margin-left:1.5em;}  


.blog .excerpt {
  margin:0;
margin-top:0.3em;
  padding: 0;
  margin-left:1em;
  padding-left:1em;
  font-size:90%;
  border-left:1px solid #ddd;
}

#tiddlerWhatsNew h1, #tiddlerWhatsNew h2 {border-bottom:none;}
div[tags~="RecentUpdates"], div[tags~="lewcidExtension"] {margin-bottom: 2em;}

#hoverMenu {background:transparent;}
#hoverMenu  .button, #hoverMenu  .tiddlyLink {border:none; font-weight:bold; background:#f37211; color:#fff; padding:0 5px; float:right; margin-bottom:4px;}
#hoverMenu .button:hover, #hoverMenu .tiddlyLink:hover {font-weight:bold; border:none; color:#f37211; background:#000; padding:0 5px; float:right; margin-bottom:4px;}

#topMenu .fontResizer {float:right;}

#topMenu .fontResizer .button{border:1px solid #000;}
#topMenu .fontResizer .button:hover {border:1px solid #f37211; color:#fff;}
#sidebarTabs .txtMainTab .tiddlyLinkExisting {
 font-weight: normal;
 font-style: normal;
}

#sidebarTabs .txtMoreTab .tiddlyLinkExisting {
 font-weight: bold;
 font-style: normal;
}

<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='tagging' macro='tagging'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->