#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")
using namespace std;
template <typename Arg1>
void pn(Arg1&& arg1) {
  cout << arg1 << "\n";
}
template <typename Arg1, typename... Args>
void pn(Arg1&& arg1, Args&&... args) {
  cout << arg1 << " ";
  pn(args...);
}
template <typename Arg1>
void ps(Arg1&& arg1) {
  cout << arg1 << " ";
}
template <typename Arg1, typename... Args>
void ps(Arg1&& arg1, Args&&... args) {
  cout << arg1 << " ";
  ps(args...);
}
template <typename Arg1>
void read(Arg1&& arg1) {
  cin >> arg1;
}
template <typename Arg1, typename... Args>
void read(Arg1&& arg1, Args&&... args) {
  cin >> arg1;
  read(args...);
}
void LOCAL();
long long gcde(long long a, long long b) {
  if (a == 0) {
    return b;
  }
  return gcde(b % a, a);
}
int main() {
  clock_t z = clock();
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  double a, b, c, d;
  read(a, b, c, d);
  double abr = a / b;
  double cdr = c / d;
  if (abr < cdr) {
    long long diff = (long long)(b * c) - (long long)(a * d);
    long long den = (long long)(b * c);
    long long GCD = gcde(diff, den);
    if (GCD == 1) {
      cout << diff << "/" << den;
    } else {
      cout << diff / GCD << "/" << den / GCD;
    }
  } else if (abr > cdr) {
    long long diff = (long long)(a * d) - (long long)(b * c);
    long long den = (long long)(a * d);
    long long GCD = gcde(diff, den);
    if (GCD == 1) {
      cout << diff << "/" << den;
    } else {
      cout << diff / GCD << "/" << den / GCD;
    }
  } else {
    cout << 0 << "/" << 1;
  }
  cout << "\n";
  fprintf(stderr, "Total Time: %.7f\n", (double)(clock() - z) / CLOCKS_PER_SEC),
      fflush(stderr);
  return 0;
}
void LOCAL() {}
