methods, Tools) / NORTE-01-0145-FEDER-000037,
supported by Norte Portugal Regional Operational
Programme (NORTE 2020), under the PORTUGAL
2020 Partnership Agreement, through the European
Regional Development Fund (EFDR).
REFERENCES
Albert, E., de Boer, F. S., H
¨
ahnle, R., Johnsen, E. B.,
Schlatte, R., Tarifa, S., and Wong, P. (2014). For-
mal modeling and analysis of resource management
for cloud architectures: an industrial case study using
real-time ABS. Service Oriented Computing and Ap-
plications, 8(4):323–339.
Apt, K. R. (1986). Correctness Proofs of Distributed Termi-
nation Algorithms. ACM Trans. Program. Lang. Syst.,
8(3):388–405.
Barnett, M., Chang, B.-Y. E., DeLine, R., Jacobs, B., and
Leino, K. R. M. (2006). Boogie: A Modular Reusable
Verifier for Object-oriented Programs. In Proceedings
of the 4th International Conference on Formal Meth-
ods for Components and Objects, FMCO’05, pages
364–387. Springer-Verlag.
Bellettini, C., Camilli, M., Capra, L., and Monga, M.
(2015). Distributed CTL model checking using
MapReduce: theory and practice. Concurrency and
Computation: Practice and Experience.
Berriman, G. B., Deelman, E., Good, J. C., Jacob, J. C.,
Katz, D. S., Kesselman, C., Laity, A. C., Prince,
T. A., Singh, G., and Su, M.-H. (2004). Montage:
a grid-enabled engine for delivering custom science-
grade mosaics on demand. In SPIE Astronomical
Telescopes+ Instrumentation, pages 221–232. Inter-
national Society for Optics and Photonics.
Bobot, F., Filli
ˆ
atre, J.-C., March
´
e, C., and Paskevich, A.
(2011). Why3: Shepherd your herd of provers. In
Boogie 2011: First International Workshop on Inter-
mediate Verification Languages, pages 53–64.
Cohen, E., Dahlweid, M., Hillebrand, M., Leinenbach, D.,
Moskal, M., Santen, T., Schulte, W., and Tobies, S.
(2009). VCC: A practical system for verifying concur-
rent C. In Theorem Proving in Higher Order Logics,
pages 23–42. Springer.
Cuoq, P., Kirchner, F., Kosmatov, N., Prevosto, V., Signoles,
J., and Yakobowski, B. (2012). Frama-C. In Interna-
tional Conference on Software Engineering and For-
mal Methods, pages 233–247. Springer.
de Carvalho Junior, F. H., Lins, R., Correa, R. C., and
Ara
´
ujo, G. A. (2007). Towards an Architecture for
Component-Oriented Parallel Programming. Concur-
rency and Computation: Practice and Experience,
19(5):697–719.
de Carvalho Junior, F. H., Rezende, C. A., Silva, J. C., and
Al Alam, W. G. (2016). Contextual abstraction in a
type system for component-based high performance
computing platforms. Science of Computer Program-
ming.
de Carvalho Silva, J. and de Carvalho Junior, F. H. C.
(2016). A Platform of Scientific Workflows for Or-
chestration of Parallel Components in a Cloud of High
Performance Computing Applications. In Lecture
Notes in Computer Science. Springer.
Dean, J. and Ghemawat, S. (2008). MapReduce: simplified
data processing on large clusters. Communications of
the ACM, 51(1):107–113.
Dongarra, J., Otto, S. W., Snir, M., and Walker, D. (1995).
An Introduction to the MPI Standard. Technical Re-
port CS-95-274, University of Tennessee.
Franc¸ois Bobot, Jean-Christophe Filli
ˆ
atre, Claude March
´
e,
and Andrei Paskevich (2014). Let’s Verify This with
Why3. International Journal on Software Tools for
Technology Transfer (STTT), pages 1–19.
Groote, J. F., Mathijssen, A., Reniers, M., Usenko, Y., and
van Weerdenburg, M. (2007). The Formal Specifi-
cation Language mCRL2. In Methods for Modelling
Software Systems: Dagstuhl Seminar 06351.
Jacobs, B., Smans, J., Philippaerts, P., Vogels, F., Pen-
ninckx, W., and Piessens, F. (2011). VeriFast: A pow-
erful, sound, predictable, fast verifier for C and Java.
In NASA Formal Methods, pages 41–55. Springer.
Kai Hu, Lei Lei, and Wei-Tek Tsai (2016). Multi-tenant
Verification-as-a-Service (VaaS) in a cloud. Simula-
tion Modelling Practice and Theory, 60:122 – 143.
L
´
opez, H. A., Marques, E. R. B., Martins, F., Ng, N., San-
tos, C., Vasconcelos, V. T., and Yoshida, N. (2015).
Protocol-based verification of message-passing paral-
lel programs. In Proceedings of the 2015 ACM SIG-
PLAN International Conference on Object-Oriented
Programming, Systems, Languages, and Applications,
pages 280–298. ACM.
Mancini, T., Mari, F., Massini, A., Melatti, I., and Tronci, E.
(2015). SyLVaaS: System level formal verification as
a service. In 2015 23rd Euromicro International Con-
ference on Parallel, Distributed, and Network-Based
Processing, pages 476–483. IEEE.
OpenMP, O. (1997). A Proposed Industry Standard API for
Shared Memory Programming. OpenMP Architecture
Review Board, 27.
Owicki, S. and Gries, D. (1976). An axiomatic proof
technique for parallel programs I. Acta informatica,
6(4):319–340.
Reynolds, J. C. (2002). Separation logic: A logic for shared
mutable data structures. In Logic in Computer Sci-
ence, 2002. Proceedings. 17th Annual IEEE Sympo-
sium on, pages 55–74. IEEE.
Schaefer, I. and Sauer, T. (2011). Towards verification as
a service. In International Workshop on Eternal Sys-
tems, pages 16–24. Springer.
Siegel, S. F., Zheng, M., Luo, Z., Zirkel, T. K., Marianiello,
A. V., Edenhofner, J. G., Dwyer, M. B., and Rogers,
M. S. (2015). CIVL: the concurrency intermediate
verification language. In Proceedings of the Interna-
tional Conference for High Performance Computing,
Networking, Storage and Analysis, page 61. ACM.
Vo, A., Vakkalanka, S., DeLisi, M., Gopalakrishnan, G.,
Kirby, R. M., and Thakur, R. (2009). Formal Veri-
fication of Practical MPI Programs. SIGPLAN Not.,
44(4):261–270.
CLOSER 2017 - 7th International Conference on Cloud Computing and Services Science
212