#include <tgmath.h>
#include <gmp.h>
#include <mpfr.h>
#include <stdio.h>
#include <stdbool.h>

char *name = "3.9.2 real part (p56)";

double f_if() {
        float r7989 = 1.0f;
        float r7990 = -r7989;
        float r7991 = 2.0f;
        float r7992 = r7990 / r7991;
        float r7993 = 3.0f;
        float r7994 = sqrt(r7993);
        float r7995 = r7994 / r7991;
        float r7996 = /* ERROR: no complex support in C */;
        float r7997 = r7996 * r7996;
        float r7998 = r7997 * r7996;
        float r7999 = r7998 * r7996;
        float r8000 = -r7991;
        float r8001 = 0.0f;
        float r8002 = /* ERROR: no complex support in C */;
        float r8003 = r8002 * r7996;
        float r8004 = r8003 * r7996;
        float r8005 = r8004 * r7996;
        float r8006 = r7999 + r8005;
        float r8007 = 5.0f;
        float r8008 = /* ERROR: no complex support in C */;
        float r8009 = r8008 * r7996;
        float r8010 = r8009 * r7996;
        float r8011 = r8006 + r8010;
        float r8012 = 4.0f;
        float r8013 = /* ERROR: no complex support in C */;
        float r8014 = r8013 * r7996;
        float r8015 = r8011 + r8014;
        float r8016 = 7.0f;
        float r8017 = /* ERROR: no complex support in C */;
        float r8018 = r8015 + r8017;
        float r8019 = /* ERROR: no complex support in C */;
        return r8019;
}

double f_id() {
        double r8020 = 1.0;
        double r8021 = -r8020;
        double r8022 = 2.0;
        double r8023 = r8021 / r8022;
        double r8024 = 3.0;
        double r8025 = sqrt(r8024);
        double r8026 = r8025 / r8022;
        double r8027 = /* ERROR: no complex support in C */;
        double r8028 = r8027 * r8027;
        double r8029 = r8028 * r8027;
        double r8030 = r8029 * r8027;
        double r8031 = -r8022;
        double r8032 = 0.0;
        double r8033 = /* ERROR: no complex support in C */;
        double r8034 = r8033 * r8027;
        double r8035 = r8034 * r8027;
        double r8036 = r8035 * r8027;
        double r8037 = r8030 + r8036;
        double r8038 = 5.0;
        double r8039 = /* ERROR: no complex support in C */;
        double r8040 = r8039 * r8027;
        double r8041 = r8040 * r8027;
        double r8042 = r8037 + r8041;
        double r8043 = 4.0;
        double r8044 = /* ERROR: no complex support in C */;
        double r8045 = r8044 * r8027;
        double r8046 = r8042 + r8045;
        double r8047 = 7.0;
        double r8048 = /* ERROR: no complex support in C */;
        double r8049 = r8046 + r8048;
        double r8050 = /* ERROR: no complex support in C */;
        return r8050;
}


double f_of() {
        float r8051 = 1.0f;
        float r8052 = -r8051;
        float r8053 = 2.0f;
        float r8054 = r8052 / r8053;
        float r8055 = 3.0f;
        float r8056 = sqrt(r8055);
        float r8057 = r8056 / r8053;
        float r8058 = /* ERROR: no complex support in C */;
        float r8059 = r8058 * r8058;
        float r8060 = r8059 * r8058;
        float r8061 = r8058 * r8060;
        float r8062 = -r8053;
        float r8063 = 0.0f;
        float r8064 = /* ERROR: no complex support in C */;
        float r8065 = r8064 * r8058;
        float r8066 = r8058 * r8065;
        float r8067 = r8058 * r8066;
        float r8068 = r8061 + r8067;
        float r8069 = 5.0f;
        float r8070 = /* ERROR: no complex support in C */;
        float r8071 = r8070 * r8058;
        float r8072 = r8071 * r8058;
        float r8073 = r8068 + r8072;
        float r8074 = 4.0f;
        float r8075 = /* ERROR: no complex support in C */;
        float r8076 = r8058 * r8075;
        float r8077 = r8073 + r8076;
        float r8078 = 7.0f;
        float r8079 = /* ERROR: no complex support in C */;
        float r8080 = r8077 + r8079;
        float r8081 = /* ERROR: no complex support in C */;
        return r8081;
}

double f_od() {
        double r8082 = 1.0;
        double r8083 = -r8082;
        double r8084 = 2.0;
        double r8085 = r8083 / r8084;
        double r8086 = 3.0;
        double r8087 = sqrt(r8086);
        double r8088 = r8087 / r8084;
        double r8089 = /* ERROR: no complex support in C */;
        double r8090 = r8089 * r8089;
        double r8091 = r8090 * r8089;
        double r8092 = r8089 * r8091;
        double r8093 = -r8084;
        double r8094 = 0.0;
        double r8095 = /* ERROR: no complex support in C */;
        double r8096 = r8095 * r8089;
        double r8097 = r8089 * r8096;
        double r8098 = r8089 * r8097;
        double r8099 = r8092 + r8098;
        double r8100 = 5.0;
        double r8101 = /* ERROR: no complex support in C */;
        double r8102 = r8101 * r8089;
        double r8103 = r8102 * r8089;
        double r8104 = r8099 + r8103;
        double r8105 = 4.0;
        double r8106 = /* ERROR: no complex support in C */;
        double r8107 = r8089 * r8106;
        double r8108 = r8104 + r8107;
        double r8109 = 7.0;
        double r8110 = /* ERROR: no complex support in C */;
        double r8111 = r8108 + r8110;
        double r8112 = /* ERROR: no complex support in C */;
        return r8112;
}

void mpfr_fmod2(mpfr_t r, mpfr_t n, mpfr_t d, mpfr_rnd_t rmd) {
        mpfr_fmod(r, n, d, rmd);
        if (mpfr_cmp_ui(r, 0) < 0) mpfr_add(r, r, d, rmd);
}


static mpfr_t r8113, r8114, r8115, r8116, r8117, r8118, r8119, r8120, r8121, r8122, r8123, r8124, r8125, r8126, r8127, r8128, r8129, r8130, r8131, r8132, r8133, r8134, r8135, r8136, r8137, r8138, r8139, r8140, r8141, r8142, r8143;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1104);
        mpfr_init_set_str(r8113, "1", 10, MPFR_RNDN);
        mpfr_init(r8114);
        mpfr_init_set_str(r8115, "2", 10, MPFR_RNDN);
        mpfr_init(r8116);
        mpfr_init_set_str(r8117, "3", 10, MPFR_RNDN);
        mpfr_init(r8118);
        mpfr_init(r8119);
        mpfr_init(r8120);
        mpfr_init(r8121);
        mpfr_init(r8122);
        mpfr_init(r8123);
        mpfr_init(r8124);
        mpfr_init_set_str(r8125, "0", 10, MPFR_RNDN);
        mpfr_init(r8126);
        mpfr_init(r8127);
        mpfr_init(r8128);
        mpfr_init(r8129);
        mpfr_init(r8130);
        mpfr_init_set_str(r8131, "5", 10, MPFR_RNDN);
        mpfr_init(r8132);
        mpfr_init(r8133);
        mpfr_init(r8134);
        mpfr_init(r8135);
        mpfr_init_set_str(r8136, "4", 10, MPFR_RNDN);
        mpfr_init(r8137);
        mpfr_init(r8138);
        mpfr_init(r8139);
        mpfr_init_set_str(r8140, "7", 10, MPFR_RNDN);
        mpfr_init(r8141);
        mpfr_init(r8142);
        mpfr_init(r8143);
}

double f_im() {
        ;
        mpfr_neg(r8114, r8113, MPFR_RNDN);
        ;
        mpfr_div(r8116, r8114, r8115, MPFR_RNDN);
        ;
        mpfr_sqrt(r8118, r8117, MPFR_RNDN);
        mpfr_div(r8119, r8118, r8115, MPFR_RNDN);
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        mpfr_neg(r8124, r8115, MPFR_RNDN);
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        return mpfr_get_d(r8143, MPFR_RNDN);
}

static mpfr_t r8144, r8145, r8146, r8147, r8148, r8149, r8150, r8151, r8152, r8153, r8154, r8155, r8156, r8157, r8158, r8159, r8160, r8161, r8162, r8163, r8164, r8165, r8166, r8167, r8168, r8169, r8170, r8171, r8172, r8173, r8174;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1104);
        mpfr_init_set_str(r8144, "1", 10, MPFR_RNDN);
        mpfr_init(r8145);
        mpfr_init_set_str(r8146, "2", 10, MPFR_RNDN);
        mpfr_init(r8147);
        mpfr_init_set_str(r8148, "3", 10, MPFR_RNDN);
        mpfr_init(r8149);
        mpfr_init(r8150);
        mpfr_init(r8151);
        mpfr_init(r8152);
        mpfr_init(r8153);
        mpfr_init(r8154);
        mpfr_init(r8155);
        mpfr_init_set_str(r8156, "0", 10, MPFR_RNDN);
        mpfr_init(r8157);
        mpfr_init(r8158);
        mpfr_init(r8159);
        mpfr_init(r8160);
        mpfr_init(r8161);
        mpfr_init_set_str(r8162, "5", 10, MPFR_RNDN);
        mpfr_init(r8163);
        mpfr_init(r8164);
        mpfr_init(r8165);
        mpfr_init(r8166);
        mpfr_init_set_str(r8167, "4", 10, MPFR_RNDN);
        mpfr_init(r8168);
        mpfr_init(r8169);
        mpfr_init(r8170);
        mpfr_init_set_str(r8171, "7", 10, MPFR_RNDN);
        mpfr_init(r8172);
        mpfr_init(r8173);
        mpfr_init(r8174);
}

double f_fm() {
        ;
        mpfr_neg(r8145, r8144, MPFR_RNDN);
        ;
        mpfr_div(r8147, r8145, r8146, MPFR_RNDN);
        ;
        mpfr_sqrt(r8149, r8148, MPFR_RNDN);
        mpfr_div(r8150, r8149, r8146, MPFR_RNDN);
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        mpfr_neg(r8155, r8146, MPFR_RNDN);
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        return mpfr_get_d(r8174, MPFR_RNDN);
}

static mpfr_t r8175, r8176, r8177, r8178, r8179, r8180, r8181, r8182, r8183, r8184, r8185, r8186, r8187, r8188, r8189, r8190, r8191, r8192, r8193, r8194, r8195, r8196, r8197, r8198, r8199, r8200, r8201, r8202, r8203, r8204, r8205;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1104);
        mpfr_init_set_str(r8175, "1", 10, MPFR_RNDN);
        mpfr_init(r8176);
        mpfr_init_set_str(r8177, "2", 10, MPFR_RNDN);
        mpfr_init(r8178);
        mpfr_init_set_str(r8179, "3", 10, MPFR_RNDN);
        mpfr_init(r8180);
        mpfr_init(r8181);
        mpfr_init(r8182);
        mpfr_init(r8183);
        mpfr_init(r8184);
        mpfr_init(r8185);
        mpfr_init(r8186);
        mpfr_init_set_str(r8187, "0", 10, MPFR_RNDN);
        mpfr_init(r8188);
        mpfr_init(r8189);
        mpfr_init(r8190);
        mpfr_init(r8191);
        mpfr_init(r8192);
        mpfr_init_set_str(r8193, "5", 10, MPFR_RNDN);
        mpfr_init(r8194);
        mpfr_init(r8195);
        mpfr_init(r8196);
        mpfr_init(r8197);
        mpfr_init_set_str(r8198, "4", 10, MPFR_RNDN);
        mpfr_init(r8199);
        mpfr_init(r8200);
        mpfr_init(r8201);
        mpfr_init_set_str(r8202, "7", 10, MPFR_RNDN);
        mpfr_init(r8203);
        mpfr_init(r8204);
        mpfr_init(r8205);
}

double f_dm() {
        ;
        mpfr_neg(r8176, r8175, MPFR_RNDN);
        ;
        mpfr_div(r8178, r8176, r8177, MPFR_RNDN);
        ;
        mpfr_sqrt(r8180, r8179, MPFR_RNDN);
        mpfr_div(r8181, r8180, r8177, MPFR_RNDN);
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        mpfr_neg(r8186, r8177, MPFR_RNDN);
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        ;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        /* ERROR: no complex support in C */;
        return mpfr_get_d(r8205, MPFR_RNDN);
}

