## 4 Proposed Method
### Policy Optimization with Separation-of-Duty Constraints
#### 4.2.2 Construction of t-m MEAR Constraints from k-n SOAR Constraints
We repeatedly implement the experiments 5 times in the above three datasets, take an average of overall values, and compare the results including \(|P|\) and T with the performance of Xu-Stoller and VisMAP in the last columns of Table 17. The number of authorization rules mined using our method is less than that using Xu-Stoller and is equal to that of VisMAP. Meanwhile, in the table, there is almost no difference in execution time for all three methods. This is because there is a small number of users, objects, and authorizations in any real dataset; thus, it is feasible to find suitable rules using Xu-Stoller, though both our method (PEO_VR&SOD) and VisMAP adopt visual representation technology for a given authorization relationship before policy mining. Thus, PEO_VR&SOD performs as well as Xu-Stoller and VisMAP on the small University, Healthcare, and Project Management datasets. \begin{table}
\begin{tabular}{c c} \hline \hline _Soar_ & _Mears_ \\ \hline \(<\)[\(ar_{2}\), \(ar_{3}\), \(ar_{4}\)], \(3>\) & \(<\)[\(ar_{1}\), \(ar_{2}\), \(ar_{4}\)], \(2>\)] \\ \(<\)[\(ar_{1}\



### Performance Comparison with VisMAP in Synthetic Datasets

Since it is very difficult to find suitable real datasets, we next construct synthetic datasets with specific parameters, where the number of users varies from 100 to 1000 with a step of 100; the number of objects are 100, 200, 500, and 1000; and the attributes for users and objects randomly take values from the above real datasets. To evaluate the efficiency of PEO_VR&SOD, we take into consideration the number of mining rules and execution time as measures and compare the results with the performance of VisMAP. Additionally, as indicated in Algorithms 1 and 2, we partition the rearranged matrix by visual representations for the original matrix, while VisMAP directly separates an original matrix before rearrangement. If the synthetic datasets constructed are already sufficiently visual, then the authorization matrices need to be neither rearranged nor partitioned. Therefore, we first consider the following cases with no partition. We repeatedly implement the experiments 10 times in different synthetic datasets and take the average value. The results are shown in Figures 3 and 4. For Figure 3, the lateral axis represents the number of users, and the vertical axis represents the number of rules in the policy. For Figure 4, the lateral axis represents the number of users, and the vertical axis represents the comparison of execution time. Figure 3 shows that the number of rules varies with a varying number of users for different numbers of objects. If the number of objects is fixed at 100, and the number of users varies from 100 to 1000, then the number of rules varies from 19 to 47, which increases slightly with an increase in the number of users; however, if the number of objects is fixed at 1000, the number of rules varies from 31 to 113, showing a clear increase. Conversely, if we fix the number of users at 100 and 1000, then the number of rules also increases with an increasing number of both objects and users. Obviously, the varying number of mining rules tends to grow linearly, particularly when the number of objects is small. This is because, the greater the number of users is, the more rules that can be constructed from the mining process. \[\exists|u_{1},u_{2},\ldots,u_{k-1}|\subset U:\mathop{\cup}\limits_{i=1}^{k-1 }\mathit{user\_rules_{\gamma}}(u_{i})\supseteq\{\mathit{ar}_{1},\mathit{ar}_{ 2},\ldots,\mathit{ar}_{n}\}\Rightarrow\mathit{safe}_{\text{sant}}(\gamma)\;=0. \tag{11}\]0 Comparison of time for different numbers of users and objects. \[\exists|u_{1},u_{2},\ldots,u_{k-1}|\subset U:\mathop{\cup}\limits_{i=1}^{k-1 }\mathit{user\_rules_{\gamma}}(u_{i})\supseteq\{\mathit{ar}_{1},\mathit{ar}_{ 2},\ldots,\mathit{ar}_{n}\}\Rightarrow\mathit{safe}_{\text{sant}}(\gamma)\;=0. \tag{11}\]1 Comparison of rules for different numbers of users and objects. Figure 4 shows that the execution time varies with a varying number of users for different numbers of objects.