Bir süreç başka bir süreci ortaya çıkardığında


13

Arka planım karmaşıklık teorisi / mantığı (çoğu zaman sadece bir işlemin olduğu yerde) ve dağıtılmış hesaplama ( olduğu ve bir veya daha fazla zaman içinde başarısız olabileceği). Ancak, şimdi başka bir süreci doğurma / yaratma / döndürme süreci hakkında bir şeyler söylemek istiyorum. Buna paralel olarak hesaplama, işletim sistemleri vb. Konusunda titizlik var mı?n

Motivasyon:

Moleküler etkileşimlerin belirli özelliklerini ortaya çıkaran modeller oluşturmaya çalışıyorum. Kimyasal reaksiyonlar setinin bağımsız bir süreç olduğunu ve belli bir zamanda adımında , başka bir bağımsız süreç ortaya çıkardığını söylemek istiyorum . Sezgisel olarak, bu şeyler bağımsız süreçler gibi hissederler, çünkü - veya çok az temastan sonra birbirleriyle temasları yoktur, sadece birbirinin yerine geçen "mesajlar" dır.t S tStSt

Daha resmi:

(1) Bir sürecin başka bir bağımsız süreci doğurma fikrini yakalayan önceden var olan CS tanımları var mı? Özellikle nerede durduğunu ve başladığını ve bunun neden "makul" olduğunu belirleyebilmekle ilgileniyorum .S SS

(2) (1) 'e birden fazla cevap varsa, çeşitli tanımların artılarını ve eksilerini ne düşünüyorsunuz?

(Not: Bunu nasıl uygun şekilde etiketleyeceğime dair hiçbir fikrim yok ve yanıtlara bağlı olarak yeniden etiketlemeyi planlıyorum.)


forkSistem çağrısını Unix benzeri işletim sistemlerinde her zaman kavramsal olarak çok zarif buldum . Geçerli işlemi çoğaltan bir atomik işlem olarak görebilirsiniz . Bir çataldan önce sadece bir süreci vardı, çataldan sonra iki ve süreci vardı . Biz basite şeyler varsa ve olan özdeş , diğer tüm yönleriyle haricinde sağlayan tek bitlik göstergesi olduğunu ederken 'yeni' bir süreç olduğunu bilmesine o 'orijinal' bir süreç olduğunu bilir. Bundan sonra ve ayrı olarak devam edebilir ve hattaS S S S S S S S SSSSSSSSSkendilerini değiştirmek .
Jukka Suomela

@Jukka: Teşekkür ederim :-) Yaptığım şeyi bir Unix ilkesine bağlamanın bir yolu olsaydı tatlı olurdu.
Aaron Sterling

Yanıtlar:


13

Tabii ki modelleme süreçleri için birçok sistem var. Bunlar süreç cebirleri kategorisine girer . Anahtar örnekleridir -calculus , CCS , ACP ve CSP .π

İşlem hesaplamaları, işlem davranışını belirtmek için temel mekanizmalara sahiptir: mesaj gönderme ve alma (senkronize veya asenkronize), paralel süreçler oluşturma, davranışlar arasında belirsiz seçim ve süreçlerin replikasyonu. Kalkülüs yapı sayısı bakımından küçük olmasına rağmen, çok etkileyici ve çok sayıda araştırma özelliklerini araştırmaya gitti.

diğerlerinden -calculus farklıdır izin vermesi, özünde, işlemler, birinci sınıf değerleri olarak geçirilecek için. Aslında kanal adlarının birinci sınıf değerler olarak iletilmesine izin vererek dinamik topolojideki değişiklikleri mümkün kılar. Muhtemelen istediğiniz hesap budur çünkü en büyük dinamikliği sunar.π

Moleküllerin modellenmesi açısından bakıldığında CSP (sıralı süreçleri iletme) biraz tuhaftır. Çok sayıda destek teorisi ve araç desteği var. (CAR Hoare tarafından icat edildi.)

CCS ve ACP calculus'tan daha az dinamikliğe sahiptir , ancak analiz edilmesi ve simüle edilmesi çok daha kolaydır. ACP için CRL (ve CRL2) adlı sağlam bir araç seti kullanılabilir. CCS için benzer araçların bulunduğundan emin olabilirsiniz.μ μπμμ

İlgili çalışmayı incelemeye başladım (aşağıya bakın) ve sonra modelleme formalizmlerinden hangisinin aradığınıza uygun olduğunu bulurdum.

Aslında süreç cebirini kullanarak kimyasal reaksiyonları ve biyolojik süreçleri modelleyen oldukça fazla çalışma vardır. Muhtemelen bakmak için en iyi yer Luca Cardelli'nin yayın listesidir. BioComputing ile ilgili tüm araştırma dizisinin muhtemelen bu konuda 30 makalesi var. Bu konuşma , çalışmalarının çoğuna genel bir bakış sunuyor. Bu bir bildiri okurken gerçekten ayrıntılarını görmek için tek yol olsa, biraz daha resmi.

Kimyasal süreçleri doğrudan modelleyen bir yaklaşım CHAM'dir (kimyasal soyut makine). Buradaki anahtar bileşen bir molekül ve membran çözeltisidir. Molekülleri yeniden düzenlemek ve önemsizleri gidermek için ısıtma ve soğutma kuralları vardır. Bu kurallar tersine çevrilebilir. Son olarak reaksiyonları modelleyen reaksiyon kuralları vardır. Proses cebirlerinin aksine, CHAM modelleri süreçlerin sözdizimi konusunda o kadar endişeli değildir, böylece molekülleri kendi temsilini icat edebilirsiniz.

Maude araç setinde gerçekleşen yeniden yazma mantığı, bu tür reaksiyonları belirtmek için az çok doğrudan bir yaklaşım sunar. Sadece yeniden yazma kurallarını belirtmek gerekir, "çorba" teslim otomatiktir. Araç seti (ufacık) kimyasal reaksiyonların simülasyonunu ve analizini sağlayacaktır. Olasılıkla bir Maude varyantı da vardır.


Petri-ağlar da olasılıklar arasında sayılabilir mi? çatallama, giden iki geçişli bir yere sahip olarak modellenebilir.
M. Alaggan

Daha genel olarak, petri-net stil etkileşimleri doğrusal mantıkta modellenebilir (bir örnek için, tek örnek olmasa da, bkz. Watkins ve ark., TYPES 2003, "Eşzamanlı bir mantıksal çerçeve: Öneri parçası")
Rob Simmons

π

@M. Alaggan: Görünüşe göre Petri ağları işi yapabilir. Her yer bir kimyasallar havuzu olarak düşünülebilir. Her geçiş reaksiyon olarak kabul edilebilir. Dolayısıyla, H ve O ve H2O olarak adlandırılan yerlerimiz olsaydı, bir geçiş H'den O'dan iki jeton alabilir ve bir jetonu H2O'ya koyabilirdi. Bu şekilde modelleme ile ilgili sorun, bu tür geçişlerin sadece bir tanesinin, aynı anda birçok geçişin ateşlenmesine izin verecek işlem cebirlerinin aksine, aynı anda ateşleyebilmesidir.
Dave Clarke

@Aaron: ne yapmaya çalıştığınıza bağlı olarak, BioPEPA gibi daha modern işlem taşları sizin için yararlı olabilir.
András Salamon

7

BioComputing ile ilgili olan ama aynı olmayan (maalesef bu alanda çok iyi bilgili değilim) ile ilgili - inandığım - başka bir çalışma alanı da "membran hesaplama" dır.

Membran hesaplama anlayışım, işlem-caclui dünyasında (Dave Clarke'ın cevabı orada iyi işaretçiler verdi) açıkça hücresel etkileşimleri modellemek için kullanılan metaforları kullanmasıdır. Membran hesaplama için iyi bir rehber, muhtemelen TCS'de Paun ve Rozenberg tarafından membran hesaplama için uygun şekilde adlandırılmış A rehberidir . Birkaç yıl önceydi (ve şu anda kontrol etmek için bir ödeme duvarının içinde değilim), ancak bazı zar hesaplama modellerinin, hücresel mitozu bir şekilde yansıtması gereken "çatal" kavramına sahip olduğuna inanıyorum.


Teşekkürler Rob. Cardelli'nin çalışması, bildiğim kadarıyla membran hesaplama üzerine değinmiyor. Daha çok DNA devreleri için bir programlama dili teorisi oluşturmaya odaklanmıştır. İşaretçiyi takdir ediyorum, ama sanırım daha "ana akım" bir şey arıyorum (yani herhangi bir şekilde biyo-ilgili değil).
Aaron Sterling

1
Bu kesinlikle bir alternatif. @Aaron: Cardelli'nin Brane Matematik lucacardelli.name/Papers/Brane%20Calculi.pdf modelleri membranlar.
Dave Clarke

Ha! Kitle kaynak kullanımı gücü! Tekrar teşekkürler! :-)
Aaron Sterling
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.