How to resolve the algorithm Symmetric difference step by step in the Picat programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Symmetric difference step by step in the Picat programming language

Table of Contents

Problem Statement

Given two sets A and B, compute

( A ∖ B ) ∪ ( B ∖ A ) .

{\displaystyle (A\setminus B)\cup (B\setminus A).}

That is, enumerate the items that are in A or B but not both. This set is called the symmetric difference of A and B. In other words:

( A ∪ B ) ∖ ( A ∩ B )

{\displaystyle (A\cup B)\setminus (A\cap B)}

(the set of items that are in at least one of A or B minus the set of items that are in both A and B). Optionally, give the individual differences (

A ∖ B

{\displaystyle A\setminus B}

and

B ∖ A

{\displaystyle B\setminus A}

) as well.

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Symmetric difference step by step in the Picat programming language

Source code in the picat programming language

import ordset.

go =>
  A = ["John", "Serena", "Bob", "Mary", "Serena"].new_ordset(),
  B = ["Jim", "Mary", "John", "Jim", "Bob"].new_ordset(),

  println(symmetric_difference=symmetric_difference(A,B)),
  println(symmetric_difference2=symmetric_difference2(A,B)),

  println(subtractAB=subtract(A,B)),
  println(subtractBA=subtract(B,A)),

  println(union=union(A,B)),
  println(intersection=intersection(A,B)),  
  nl.

symmetric_difference(A,B) = union(subtract(A,B), subtract(B,A)).
% variant
symmetric_difference2(A,B) = subtract(union(A,B), intersection(B,A)).

  

You may also check:How to resolve the algorithm Sockets step by step in the Objective-C programming language
You may also check:How to resolve the algorithm Tau function step by step in the EMal programming language
You may also check:How to resolve the algorithm Even or odd step by step in the AppleScript programming language
You may also check:How to resolve the algorithm Gamma function step by step in the RPL programming language
You may also check:How to resolve the algorithm Cholesky decomposition step by step in the PARI/GP programming language