### Program Information

Name: Google web search
Domain: web service and application
Functionality: search with a certain criterion and return a set of web pages
Input: X: search criterions
Output: $\ (X)$ : the number of results satisfying the search criterion X Pages(X): the search results

#### Reference

Metamorphic Relations for Enhancing System Understanding and Use https://dx.doi.org/10.1109/TSE.2018.2876433

### MR Information

#### MR1------

Description:
Property: $MR_SEARCH$: If search criterion $X_2$ implies search criterion $X_1$ (that is, if $X_2$ is satisfied then $X_1$ is satisfied), then $\#(X_2) ≤ \#(X_1)$, where $\#(X)$ denotes the number of results satisfying the search criterion $X$
Source input: $X_{1}$: a search criterion
Source output: $\#(X_{1})$: the number of results satisfying the search criterion $X_{1}$,   $Pages(X_{1})$: the search result pages satisfying the search criterion $X_{1}$
Follow-up input: $X_{2}$: a search criterion implies search criterion $X_{1}$ (that is, if $X_{2}$ is satisfied then $X_{1}$ is satisfied)
Follow-up output: $\#(X_{2})$: the number of results satisfying the search criterion $X_{2}$,   $Pages(X_{2})$: the search result pages satisfying the search criterion $X_{2}$
Input relation: if $X_{2}$ is satisfied then $X_{1}$ is satisfied
Output relation: $\#(X_{2})\leq\#(X_{1})$: the number of results satisfying the search criterion $X_{2}$ is less than or equal to $X_{1}$,   $Pages(X_{2})\subseteq Pages(X_{1})$
Pattern: symmetry, add noise

#### MR2------

Description:
Property: $MR_OR$: If $A_1 ≡ (A_2\ OR\ B)$, then $\#(A_{2})\leq\#(A_{1})$, where $A_1$, $A_2$, and $B$ denote search criteria / conditions, and “OR” is the logical operator for inclusive disjunction $(∨)$
Source input: $A_{1}$:a search criterion
Source output: $\#(A_{1})$: the number of results satisfying the search criterion $A_{1}$
Follow-up input: $A_{2}, B$: two search criterions
Follow-up output: $\#(A_{2})$: the number of results satisfying the search criterion $A_{2}$
Input relation: $A_{1}\equiv (A_{2}\ OR\ B)$: the search criterion $A_{1}$ is $(A_{2}\ OR\ B)$
Output relation: $\#(A_{2})\leq\#(A_{1})$: the number of results satisfying the search criterion $A_{2}$ is less than or equal to $A_{1}$
Pattern: symmetry, add noise

#### MR3------

Description:
Property: $MR_AND$: If $A1 ≡ (A_2\ AND\ B)$, then $\#(A_{2})\leq\#(A_{1})$ , where “AND” is the operator for logical conjunction $(∧)$
Source input: $A_{1}$:a search criterion
Source output: $\#(A_{1})$: the number of results satisfying the search criterion $A_{1}$
Follow-up input: $A_{2}, B$: two search criterions
Follow-up output: $\#(A_{2})$: the number of results satisfying the search criterion $A_{2}$
Input relation: $A_{1}\equiv (A_{2}\ AND\ B)$: the search criterion $A_{1}$ is $(A_{2}\ AND\ B)$
Output relation: $\#(A_{2})\leq\#(A_{1})$: the number of results satisfying the search criterion $A_{2}$ is less than or equal to $A_{1}$
Pattern: symmetry, add noise
Insert title here