Citation: Rong Li, Xiangyang Li, Yan Xiong, An Jiang, David Lee. An IPVO-based reversible data hiding scheme using floating predictors[J]. Mathematical Biosciences and Engineering, 2019, 16(5): 5324-5345. doi: 10.3934/mbe.2019266
[1] | Xin Yun, Myung Hwan Chun . The impact of personalized recommendation on purchase intention under the background of big data. Big Data and Information Analytics, 2024, 8(0): 80-108. doi: 10.3934/bdia.2024005 |
[2] | Bill Huajian Yang . Modeling path-dependent state transitions by a recurrent neural network. Big Data and Information Analytics, 2022, 7(0): 1-12. doi: 10.3934/bdia.2022001 |
[3] | Antonio N. Bojanic . Accounting for the Trump factor in modeling the COVID-19 epidemic: the case of Louisiana. Big Data and Information Analytics, 2021, 6(0): 74-85. doi: 10.3934/bdia.2021006 |
[4] | Xing Tan, Giri Kumar Tayi . CERTONTO: TOWARDS AN ONTOLOGICAL REPRESENTATION OF FAIR TRADE CERTIFICATION STANDARDS. Big Data and Information Analytics, 2017, 2(3&4): 255-264. doi: 10.3934/bdia.2017022 |
[5] | David E. Bernholdt, Mark R. Cianciosa, David L. Green, Kody J.H. Law, Alexander Litvinenko, Jin M. Park . Comparing theory based and higher-order reduced models for fusion simulation data. Big Data and Information Analytics, 2018, 3(2): 41-53. doi: 10.3934/bdia.2018006 |
[6] | Zhouchen Lin . A Review on Low-Rank Models in Data Analysis. Big Data and Information Analytics, 2016, 1(2): 139-161. doi: 10.3934/bdia.2016001 |
[7] | Xiaoying Chen, Chong Zhang, Zonglin Shi, Weidong Xiao . Spatio-temporal Keywords Queries in HBase. Big Data and Information Analytics, 2016, 1(1): 81-91. doi: 10.3934/bdia.2016.1.81 |
[8] | Dongyang Yang, Wei Xu . Statistical modeling on human microbiome sequencing data. Big Data and Information Analytics, 2019, 4(1): 1-12. doi: 10.3934/bdia.2019001 |
[9] | Weidong Bao, Wenhua Xiao, Haoran Ji, Chao Chen, Xiaomin Zhu, Jianhong Wu . Towards big data processing in clouds: An online cost-minimization approach. Big Data and Information Analytics, 2016, 1(1): 15-29. doi: 10.3934/bdia.2016.1.15 |
[10] | Tieliang Gong, Qian Zhao, Deyu Meng, Zongben Xu . Why Curriculum Learning & Self-paced Learning Work in Big/Noisy Data: A Theoretical Perspective. Big Data and Information Analytics, 2016, 1(1): 111-127. doi: 10.3934/bdia.2016.1.111 |
The Business Process Model and Notation (BPMN) [15] has been widely adopted in recent years as one of the standard languages for visual description of business processes. In particular BPMN has been extensively used in facilitating effective communication among technical experts, business users and other stakeholders within a work group, for business process design and implementation, or problem solving in business domains.
BPMN however does not contain a formal semantics. Consequently, rigorously specifying dynamical behaviors of objects in a BPMN specified business process model can be challenging and error-prone. For critical systems (e.g., a medical process specified in BPMN), the existence of semantic ambiguities in these systems is costly from every perspective and thus should be eliminated as much as possible. For these reasons, in recent years, several efforts have been made to assign BPMN with formal semantics. Among them, [3] and [4] in particular proposed to map a BPMN model into a Petri net, which is a mathematical modeling language (although a Petri net can be graphical too) that has precise execution semantics. In addition, decades of research in Petri nets offers well-established theories to support analysis of dynamic properties in Petri-net specified systems. In [3] and [4], a given BPMN model is first dissected into several BPMN elements. For each type of the element, a mapping from the element to a Petri net module is proposed. After the dissection step and mapping step, these Petri nets modules are eventually integrated together to construct a single Petri net.
In our previous work ([17], [18], [19]) meanwhile we presented a straightforward first-order-logic (FOL) based framework for Petri nets. More specifically, we have shown that: a) we can represent Petri nets and their variants as Situation-Calculus1 based action theories, and the theories for basic Petri nets are called in short as SCOPE, standing for Situation Calculus Ontology for PEtri nets ([17], [18]); b) given an instance of SCOPE theory, we could further build up Golog procedures2, where sequential, iterative, or nondeterministic composite sequences of transition firings in Petri nets and their variants can be further axiomatized through defining macros; these macros are built on top of more primitive procedures and the only basic action in the domain transition firing [19]; c) executability testing of Golog procedures via theorem-proving can be implemented through efficient logic programming in Prolog ([18], [19]).
1The Situation Calculus ([10,16]) is a particular formal language for describing changes upon actions in dynamical domains.
2In the Situation Calculus, a Golog procedure defines a complex action that is composed of basic actions.
In this paper, we show that the mapping method as proposed in ([3] and [4]) can be naturally extended into SCOPE context. That is, using SCOPE, we can easily define a Petri net module, resulted from performing mapping on a BPMN object, as a Golog complex procedure. These Golog procedures act as interfaces encapsulating Petri net from being directly accessed by end users. Consequently, stakeholders can still work at BPMN level, while the model is enriched with a Petri-net specified formal semantics. Additionally, with these procedures, users can write more complicated user-defined BPMN procedures in a hierarchical way. Since a BPMN procedure can be further translated into Prolog programs [19], our approach support automated verification of important system dynamic properties, such as the executability of these procedures.
The remainder of this paper is organized as follows. Section 2 provides introductory reviews to the key technologies employed in this paper. Enriched with an example, Section 3 is the core section that explains our approach. Conclusive remarks are presented in Section 4.
In this section, we give a brief introduction to BPMN and Petri Nets. The method of mapping from BPMN onto Petri Nets as stated in Section 3 of [4] is then briefly reviewed. We also introduce here Situation Calculus/Golog and SCOPE.
Business Process Model and Notation (BPMN) is a notational system for graphical specification of processes in business models. BPMN was developed and has been maintained by the Object Management Group (OMG) [15]. Control-flow related elements in BPMN are the focus of this paper and they include objects of events, tasks and gateways.
An event denotes happening of something in a model and is represented as a circle. In particular, a start/end event signals the start/finish of a process. An activity denotes work to be done in a model and is represented as a rounded-corner rectangle. A task is an atomic activity. Gateways are diamond-shaped quadrilaterals and they denote different routing constructs. Among them, a fork gateway (AND-split) creates concurrent flows and a join gateway synchronises these flows. A decision gateway (XOR-split) selects exactly one flow from a set of them based on certain criteria (data or event) and a merge gateway (XOR-join) merges the alternative flows in the set into one flow. When the choice is non-unique, the pair of gateways OR-split and OR-join is applied instead. Graphically these BPMN objects are connected to each other by arrows. Figure 2 is an example BPMN-denoted business process (adapted from Fig. 13 (a) in [4]).
A Petri net (PN) [14] is a pair
The method of mapping a BPMN process into a Petri net introduced in [4] assumes that the BPMN process is in the first place "well-formed". A well-formed BPMN should satisfy several conditions (e.g., a start event has one outgoing flow and no incoming flow.). It is shown that a given BPMN process can always be transformed into a well-formed one ([1,9,25,26]). The mapping process by itself is straightforward and are summarized in Figure 1 (Several issues are identified and addressed accordingly in [4]; however they are not discussed here). In the figure, note that places in the Petri net modules/components are dashed, meaning that these places would act as connectors to link multiple components into a Petri net through mapping. As an example, the Petri net in Figure 3 is resulted from performing mapping on the BPMN model in Figure 2.
The Situation Calculus is a logical language for representing actions and changes in a dynamical domain. It is first proposed by McCarthy and Hayes in 1969 [10]. The language
The theory
Primitive Action
Fluent
Situation-Independent relations
•
•
•
The Foundational Axioms
(∀s,p,t)(Poss(fire(t),s)≡(pre(p,t)⊃Tkns(p,s)≥1)) |
defines the condition for a transition node
(∀s,p,a,n)(Tkns(p,do(a,s))=n≡γf(p,n,a,s)∨ |
(Tkns(p,s)=n∧¬∃n′γf(p,n′,a,s))), |
where
•
•
The above Successor State Axiom summarizes all conditions where the number of tokens at place
As an example, we define Petri net in Figure 3 as a SCOPE theory. The axiomatic part of SCOPE, including Foundational Axioms, Precondition Axioms, and Successor State Axioms remain unchanged. We only need to specify the initial marking and the situation-independent, topological structure of the Petri-net in Figure 3. That is, the number of tokens at place
pre(P1,T1),pre(T1,P2),…,pre(T11,P12). |
This section includes two parts. We first specify formally the restrictions for well-formed BPMN processes, this would facilitate implementation of automated tools for evaluating formally whether a BPMN process is well-formed (using a FOL theorem prover for example). We then demonstrate how Petri nets modules for their corresponding BPMN objects can be formally described through carrying out further axiomatization on top of SCOPE.
From Section 3 of [4], a well-formed BPMN process has to satisfy the following five criteria:
1. a start event or an exception event has just one outgoing (sequence) flow but no incoming flow;
2. an end event has just one incoming flow but no outgoing flow;
3. activities and intermediate events have exactly one incoming flow and one outgoing flow;
4. fork or decision gateways have one incoming flow and more than one outgoing flows; and
5. join or merge gateways have one outgoing flow and more than one incoming flows.
In this section, first-order axiomatization of these criteria are presented (assuming that objects in the domain are sorted in logical sense).
•
•
•
•
•
•
• A start/exception event has one outgoing flow and does not have incoming flow
(∀x,y)(¬(pre(x,start(y))∧¬(pre(x,exception(y))), |
(∀y)((start(y)∨exception(y))⊃((∃x)pre(y,x)∧ |
¬(∃x1,x2)(pre(y,x1)∧pre(y,x2)∧x1≠x2))). |
• An end event has one incoming flow and does not have outgoing flow
(∀x,y)¬(pre(end(y),x)). |
(∀y)(end(y)⊃((∃x)pre(x,y)∧ |
¬(∃x1,x2)(pre(x1,y)∧pre(x2,y)∧x1≠x2))). |
• An activity/intermediate-event has one and only one incoming flow and outgoing flow
(∀y)((activity(y)∨interE(y))⊃ |
((∃x)pre(y,x)∧¬(∃x1,x2)(pre(y,x1)∧pre(y,x2)∧x1≠x2)) |
((∃z)pre(z,y)∧¬(∃z1,z2)(pre(z1,y)∧pre(z2,y)∧z1≠z2))). |
• An gateway fork or decision has one incoming flow and more than one outgoing flows
(∀y)((fork(y)∨decision(y))⊃((∃x)pre(x,y)∧ |
¬(∃x1,x2)(pre(x1,y)∧pre(x2,y)∧x1≠x2))∧ |
(∃x1,x2)(pre(y,x1)∧pre(y,x2)∧x1≠x2))). |
• An gateway join or merge has one outcoming flow and more than one ingoing flows
(∀y)((join(y)∨merge(y))⊃((∃x)pre(y,x)∧ |
¬(∃x1,x2)(pre(y,x1)∧pre(y,x2)∧x1≠x2))∧ |
(∃x1,x2)(pre(x1,y)∧pre(x2,y)∧x1≠x2))). |
It is known from our previous work that, given a SCOPE theory, we can write SCOPE procedures through defining macros, where these macros are built on top of more primitive, existing procedures and the only basic action in the domain -transition node fire. With respect to the Petri net in Figure 3, we can define a set of simple SCOPE procedures. For example,
proc
endProc
proc
endProc
The procedure
The procedure
With two procedures:
proc
endProc
To this end, it is quite clear how methodologically we are able to axiomatize these BPMN flow-control components: we can simply define those Petri-net modules transformed from those BPMN objects, as illustrated in Figure 1, as SCOPE procedures.
We start from axiomatizing a Petri-net module for the start object
proc
endProc
That is, as long as the topological relationship is verified,
The definition of a procedure corresponding to a fork gate in BPMN involves one place node that enters (and multiple place nodes that leave) the transition node to be fired. Suppose that
proc
endProc
The definition of a procedure corresponding to a join gate in BPMN involves one place node that leaves (and multiple place nodes that enter) the transition node to be fired. Suppose
proc
endProc
The definition of a procedure corresponding to a decision gate in BPMN involves one place node that enters at least one transition node, where each transition node in turn enters a place node. Suppose that
proc
;
endProc
The definition of a procedure corresponding to a merge gate in BPMN involves one place node that multiple transition nodes enter, where for each transition node there is a place node that enters the node. Suppose that
proc
;
endProc
This section includes an example of an order process (adapted from Fig. 13(a) in [4]). When an order request arrives from a customer, both tasks "CheckCreditCard" and "Prepare Products" are initialized. If the credit card is OK, the packed products would be shipped (the task "ShiProducts" is executed) and the process finishes. Alternatively, if the credit card fails, the process finishes directly. BPMN representation of the process is depicted in Fig. 2.
The following sentences capture the topology of the Order Process Diagram.
The nine BPMN objects in Figure 2 are defined as the following SCOPE procedures.
proc
endProc
proc
endProc
proc
endProc
proc
endProc
proc
;
endProc
proc
endProc
proc
endProc
proc
;
endProc
proc
endProc
It is handy to create further user-defined new procedures through macro-actions, i.e., through hierarchically constructing more complex procedures from existing ones. For example, the following procedure presumably specifies all possible executions of the BPMN process as specified in Figure 2.
proc
endProc
Feasibility/executability of procedure
?−Do(orderProcess,S0,S), |
any instantiation of the situation variable
This paper proposes to axiomatize the Petri nets modules, resulted from transforming BPMN objects, as SCOPE-based procedures. In fact, the impressive feature of high adaptability and extensibility is shared by all Situation-Calculus-based Basic Action Theories including SCOPE. In a similar way, we recently used SCOPE to aggregate event patterns in Supply Chain Management [21], and to mitigate adverse interaction analysis for concurrent application of clinical practise guidelines for comorbid patients [11,20]. Ongoing approaches using directly first-order logic for integrating medical treatments to manage multimorbidity include [11,27,12,13,22]. Formal process knowledge representation and reasoning might also find its applicability in combining probabilistic graphical models to build up frameworks and systems in areas for example information retrieval [23,24].
Our previous research ([18] and [19]) indicates that we can easily implement software tools using logic programming language Prolog [2]. Further, we might consider adopting tractable variant to Situation Calculus (for example, a sequence of research on the topic proposed in [6,7,5] is quite interesting and relevant) so an actual implementation became practically feasible. Given the rapid development of first-order theorem proving technologies in the recent years, theorem provers have recently been used to support reasoning in ontologies [8]. As part of our initiative, we plan to adapt theorem proving technologies for process ontologies like SCOPE theories.
Finally, we remark that our approach is able to incorporate processes specified with temporal constraints, since in our previous research reported in [19], a variant to SCOPE which axiomatize Time Petri-nets are presented.
We are thankful to the insightful reviews we have received to improve both the content and presentation of the paper. We gratefully acknowledge the support by NSERC (Natural Sciences and Engineering Research Council of Canada) CREATE (Collaborative Research and Training Experience Program) award in ADERSIM (Advanced Disaster, Emergency and Rapid-response Simulation)3, ORF-RE (Ontario Research Fund -Research Excellence)4 award in BRAIN Alliance5, Dapasoft Inc. in Toronto, ON, Canada6, and the York Research Chairs Program.
3http://www.yorku.ca/adersim/NSERC/
4https://www.ontario.ca/page/ontario-research-fund-research-excellence
[1] | J. Fridrich. M. Goljan and R. Du, Lossless data embedding-new paradigm in digital watermarking, EURASIP J. Adv. Signal Process., 2 (2002), 185–196. |
[2] | M. U. Celik, G. Sharma and A. M. Tekalp, Lossless generalized-LSB data embedding, IEEE Transact. Image Process., 14 (2005), 253–266. |
[3] | J. Tian, Reversible data embedding using a difference expansion, IEEE Transact. Circuit. Syst. Video Technol., 13 (2003), 890–896. |
[4] | A. M. Alattar, Reversible watermark using the difference expansion of a generalized integer transform, IEEE Transact. Image Process., 13 (2004), 1147–1156. |
[5] | Z. Ni, Y.Q. Shi and N. Snsari, Reversible data hiding, IEEE Transact. Circuit. Syst. Video Technol., 16 (2006), 354–362. |
[6] | C. Kim, Content-based image copy detection, Signal Process. Image Commun., 18 (2003), 169 –184. |
[7] | S. K. Lee, Y. H. Suh and Y. S. Ho, Reversible image authentication based on water-marking, Process IEEE ICME, (2006), 1321–1324. |
[8] | X. Li, B. Li and B. Yang, General framework to histogram-shifting-based reversible data hiding, IEEE Transact. Image Process., 23 (2013), 2181–2191. |
[9] | D. M. Thodi and J. J. Rodrigues, Expansion embedding techniques for reversible watermarking, IEEE Transact. Image Process., 16 (2007), 721–730. |
[10] | D. M. Thodi and J. J. Rodrigues, Reversible watermarking by prediction-error expansion, IEEE Southwest Symposium on Image Analysis & Interpretation IEEE, (2004), 21–25. |
[11] | H. W. Tseng and C. P. Hsieh, Prediction-based reversible data hiding, Inform. Sci., 179 (2009), 2460–2469. |
[12] | C. F. Lee, H. L. Chen and H. K. Tso, Embedding capacity raising in reversible data hiding based on prediction of difference expansion, J. Syst. Software, 83(2010), 1864–1872. |
[13] | Q. Shen, G. Liu and W. Liu, Adaptive image steganography based on pixel selection, 2015 IEEE International Conference on Progress in Informatics & Computing, 2016. |
[14] | Y. Hu, H. K. Lee and J. Li, De-based reversible data hiding with improved overflow location map, IEEE Transact. Circuits Syst. Video Technol., 19 (2009), 250–260. |
[15] | X. Li, B. Yang and T. Zeng, Efficient reversible watermarking based on adaptive prediction-error expansion and pixel selection, IEEE Transact. Image Process., 20 (2011), 3524–3533. |
[16] | D. Coltuc, Improved embedding for prediction-based reversible watermarking, IEEE Transact. Inform. Forens. Secur., 6 (2011), 873–882. |
[17] | D. Coltuc, Low distortion transform for reversible watermarking, IEEE Transact. Image Process., 21 (2012), 412–417. |
[18] | X. Li, J. Li and B. Li, High-fidelity reversible data hiding scheme based on pixel-value-ordering and prediction-error expansion, Signal Process., 93(2013), 198–205. |
[19] | B. Ou, X. Li and Y. Zhao, Reversible data hiding using invariant pixel value ordering and prediction-error expansion, Signal Process., 29 (2013), 760–772. |
[20] | X. Qu and H. J. Kim, Pixel-based pixel value ordering predictor for high-fidelity reversible data hiding, Signal Process., 111(2015), 249–260. |
[21] | F. Peng, X. Li and B. Yang, Improved PVO-based reversible data hiding, Digital Signal Process., 25 (2014), 255–265. |
[22] | P. Subitha and V. Vaithiyanathan, Novel reversible pixel-value-ordering technique for secret concealment, Indian J. Sci. Technol., 8 (2015), 628–636. |
[23] | K. H. Jung, A high-capacity reversible data hiding scheme based on sorting and prediction in digital images, Mult. Tools Appl., 76(2017), 13127–13137. |
[24] | W. He, G. Xiong and S. Weng, Reversible data hiding using multi-pass pixel value ordering and prediction-error expansion, Inform. Sci., 467(2018), 784–799. |
[25] | Y. Du, Z. X. Yin and X. P. Zhang, Improved lossless data hiding for jpeg images based on histogram modification, Comput. Mater. Cont., 55(2018), 495–507. |
[26] | X. T. Duan, H. X. Song and C. Qin, Coverless steganography for digital images based on a generative model, Comput. Mater. Cont., 55(2018), 483–493. |
[27] | L. Z. Xiong and Y. Q. Shi, On the privacy-preserving outsourcing scheme of reversible data hiding over encrypted image data in cloud computing, Comput. Mater. Cont., 55(2018), 523–539. |
[28] | M. J. Weinberger, G. Seroussi and G. Sapiro, The LOCO-I lossless image compression algorithm: Principles and standardization into JPEG-LS, IEEE Transact. Image Process., 9 (2000), 1309–1324. |
[29] | X. Wu and N. Memon, Context-based, adaptive, lossless image coding, IEEE Transact. Commun., 45 (1997), 437–444. |
[30] | V. Sachnev, H. J. Kim and J. Nam, Reversible watermarking algorithm using sorting and prediction, IEEE Transact. Circuit. Syst. Video Technol., 19 (2009), 989–999. |