#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 r8001 = 1.0f;
        float r8002 = -r8001;
        float r8003 = 2.0f;
        float r8004 = r8002 / r8003;
        float r8005 = 3.0f;
        float r8006 = sqrt(r8005);
        float r8007 = r8006 / r8003;
        float r8008 = /* ERROR: no complex support in C */;
        float r8009 = r8008 * r8008;
        float r8010 = r8009 * r8008;
        float r8011 = r8010 * r8008;
        float r8012 = -r8003;
        float r8013 = 0.0f;
        float r8014 = /* ERROR: no complex support in C */;
        float r8015 = r8014 * r8008;
        float r8016 = r8015 * r8008;
        float r8017 = r8016 * r8008;
        float r8018 = r8011 + r8017;
        float r8019 = 5.0f;
        float r8020 = /* ERROR: no complex support in C */;
        float r8021 = r8020 * r8008;
        float r8022 = r8021 * r8008;
        float r8023 = r8018 + r8022;
        float r8024 = 4.0f;
        float r8025 = /* ERROR: no complex support in C */;
        float r8026 = r8025 * r8008;
        float r8027 = r8023 + r8026;
        float r8028 = 7.0f;
        float r8029 = /* ERROR: no complex support in C */;
        float r8030 = r8027 + r8029;
        float r8031 = /* ERROR: no complex support in C */;
        return r8031;
}

double f_id() {
        double r8032 = 1.0;
        double r8033 = -r8032;
        double r8034 = 2.0;
        double r8035 = r8033 / r8034;
        double r8036 = 3.0;
        double r8037 = sqrt(r8036);
        double r8038 = r8037 / r8034;
        double r8039 = /* ERROR: no complex support in C */;
        double r8040 = r8039 * r8039;
        double r8041 = r8040 * r8039;
        double r8042 = r8041 * r8039;
        double r8043 = -r8034;
        double r8044 = 0.0;
        double r8045 = /* ERROR: no complex support in C */;
        double r8046 = r8045 * r8039;
        double r8047 = r8046 * r8039;
        double r8048 = r8047 * r8039;
        double r8049 = r8042 + r8048;
        double r8050 = 5.0;
        double r8051 = /* ERROR: no complex support in C */;
        double r8052 = r8051 * r8039;
        double r8053 = r8052 * r8039;
        double r8054 = r8049 + r8053;
        double r8055 = 4.0;
        double r8056 = /* ERROR: no complex support in C */;
        double r8057 = r8056 * r8039;
        double r8058 = r8054 + r8057;
        double r8059 = 7.0;
        double r8060 = /* ERROR: no complex support in C */;
        double r8061 = r8058 + r8060;
        double r8062 = /* ERROR: no complex support in C */;
        return r8062;
}


double f_of() {
        float r8063 = 1.0f;
        float r8064 = -r8063;
        float r8065 = 2.0f;
        float r8066 = r8064 / r8065;
        float r8067 = 3.0f;
        float r8068 = sqrt(r8067);
        float r8069 = r8068 / r8065;
        float r8070 = /* ERROR: no complex support in C */;
        float r8071 = r8070 * r8070;
        float r8072 = r8071 * r8070;
        float r8073 = r8070 * r8072;
        float r8074 = -r8065;
        float r8075 = 0.0f;
        float r8076 = /* ERROR: no complex support in C */;
        float r8077 = r8076 * r8070;
        float r8078 = r8070 * r8077;
        float r8079 = r8070 * r8078;
        float r8080 = r8073 + r8079;
        float r8081 = 5.0f;
        float r8082 = /* ERROR: no complex support in C */;
        float r8083 = r8082 * r8070;
        float r8084 = r8083 * r8070;
        float r8085 = r8080 + r8084;
        float r8086 = 4.0f;
        float r8087 = /* ERROR: no complex support in C */;
        float r8088 = r8070 * r8087;
        float r8089 = r8085 + r8088;
        float r8090 = 7.0f;
        float r8091 = /* ERROR: no complex support in C */;
        float r8092 = r8089 + r8091;
        float r8093 = /* ERROR: no complex support in C */;
        return r8093;
}

double f_od() {
        double r8094 = 1.0;
        double r8095 = -r8094;
        double r8096 = 2.0;
        double r8097 = r8095 / r8096;
        double r8098 = 3.0;
        double r8099 = sqrt(r8098);
        double r8100 = r8099 / r8096;
        double r8101 = /* ERROR: no complex support in C */;
        double r8102 = r8101 * r8101;
        double r8103 = r8102 * r8101;
        double r8104 = r8101 * r8103;
        double r8105 = -r8096;
        double r8106 = 0.0;
        double r8107 = /* ERROR: no complex support in C */;
        double r8108 = r8107 * r8101;
        double r8109 = r8101 * r8108;
        double r8110 = r8101 * r8109;
        double r8111 = r8104 + r8110;
        double r8112 = 5.0;
        double r8113 = /* ERROR: no complex support in C */;
        double r8114 = r8113 * r8101;
        double r8115 = r8114 * r8101;
        double r8116 = r8111 + r8115;
        double r8117 = 4.0;
        double r8118 = /* ERROR: no complex support in C */;
        double r8119 = r8101 * r8118;
        double r8120 = r8116 + r8119;
        double r8121 = 7.0;
        double r8122 = /* ERROR: no complex support in C */;
        double r8123 = r8120 + r8122;
        double r8124 = /* ERROR: no complex support in C */;
        return r8124;
}

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 r8125, r8126, r8127, r8128, r8129, r8130, r8131, r8132, r8133, r8134, r8135, r8136, r8137, r8138, r8139, r8140, r8141, r8142, r8143, r8144, r8145, r8146, r8147, r8148, r8149, r8150, r8151, r8152, r8153, r8154, r8155;

void setup_mpfr_f_im() {
        mpfr_set_default_prec(1104);
        mpfr_init_set_str(r8125, "1", 10, MPFR_RNDN);
        mpfr_init(r8126);
        mpfr_init_set_str(r8127, "2", 10, MPFR_RNDN);
        mpfr_init(r8128);
        mpfr_init_set_str(r8129, "3", 10, MPFR_RNDN);
        mpfr_init(r8130);
        mpfr_init(r8131);
        mpfr_init(r8132);
        mpfr_init(r8133);
        mpfr_init(r8134);
        mpfr_init(r8135);
        mpfr_init(r8136);
        mpfr_init_set_str(r8137, "0", 10, MPFR_RNDN);
        mpfr_init(r8138);
        mpfr_init(r8139);
        mpfr_init(r8140);
        mpfr_init(r8141);
        mpfr_init(r8142);
        mpfr_init_set_str(r8143, "5", 10, MPFR_RNDN);
        mpfr_init(r8144);
        mpfr_init(r8145);
        mpfr_init(r8146);
        mpfr_init(r8147);
        mpfr_init_set_str(r8148, "4", 10, MPFR_RNDN);
        mpfr_init(r8149);
        mpfr_init(r8150);
        mpfr_init(r8151);
        mpfr_init_set_str(r8152, "7", 10, MPFR_RNDN);
        mpfr_init(r8153);
        mpfr_init(r8154);
        mpfr_init(r8155);
}

double f_im() {
        ;
        mpfr_neg(r8126, r8125, MPFR_RNDN);
        ;
        mpfr_div(r8128, r8126, r8127, MPFR_RNDN);
        ;
        mpfr_sqrt(r8130, r8129, MPFR_RNDN);
        mpfr_div(r8131, r8130, r8127, 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(r8136, r8127, 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(r8155, MPFR_RNDN);
}

static mpfr_t r8156, r8157, r8158, r8159, r8160, r8161, r8162, r8163, r8164, r8165, r8166, r8167, r8168, r8169, r8170, r8171, r8172, r8173, r8174, r8175, r8176, r8177, r8178, r8179, r8180, r8181, r8182, r8183, r8184, r8185, r8186;

void setup_mpfr_f_fm() {
        mpfr_set_default_prec(1104);
        mpfr_init_set_str(r8156, "1", 10, MPFR_RNDN);
        mpfr_init(r8157);
        mpfr_init_set_str(r8158, "2", 10, MPFR_RNDN);
        mpfr_init(r8159);
        mpfr_init_set_str(r8160, "3", 10, MPFR_RNDN);
        mpfr_init(r8161);
        mpfr_init(r8162);
        mpfr_init(r8163);
        mpfr_init(r8164);
        mpfr_init(r8165);
        mpfr_init(r8166);
        mpfr_init(r8167);
        mpfr_init_set_str(r8168, "0", 10, MPFR_RNDN);
        mpfr_init(r8169);
        mpfr_init(r8170);
        mpfr_init(r8171);
        mpfr_init(r8172);
        mpfr_init(r8173);
        mpfr_init_set_str(r8174, "5", 10, MPFR_RNDN);
        mpfr_init(r8175);
        mpfr_init(r8176);
        mpfr_init(r8177);
        mpfr_init(r8178);
        mpfr_init_set_str(r8179, "4", 10, MPFR_RNDN);
        mpfr_init(r8180);
        mpfr_init(r8181);
        mpfr_init(r8182);
        mpfr_init_set_str(r8183, "7", 10, MPFR_RNDN);
        mpfr_init(r8184);
        mpfr_init(r8185);
        mpfr_init(r8186);
}

double f_fm() {
        ;
        mpfr_neg(r8157, r8156, MPFR_RNDN);
        ;
        mpfr_div(r8159, r8157, r8158, MPFR_RNDN);
        ;
        mpfr_sqrt(r8161, r8160, MPFR_RNDN);
        mpfr_div(r8162, r8161, r8158, 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(r8167, r8158, 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(r8186, MPFR_RNDN);
}

static mpfr_t r8187, r8188, r8189, r8190, r8191, r8192, r8193, r8194, r8195, r8196, r8197, r8198, r8199, r8200, r8201, r8202, r8203, r8204, r8205, r8206, r8207, r8208, r8209, r8210, r8211, r8212, r8213, r8214, r8215, r8216, r8217;

void setup_mpfr_f_dm() {
        mpfr_set_default_prec(1104);
        mpfr_init_set_str(r8187, "1", 10, MPFR_RNDN);
        mpfr_init(r8188);
        mpfr_init_set_str(r8189, "2", 10, MPFR_RNDN);
        mpfr_init(r8190);
        mpfr_init_set_str(r8191, "3", 10, MPFR_RNDN);
        mpfr_init(r8192);
        mpfr_init(r8193);
        mpfr_init(r8194);
        mpfr_init(r8195);
        mpfr_init(r8196);
        mpfr_init(r8197);
        mpfr_init(r8198);
        mpfr_init_set_str(r8199, "0", 10, MPFR_RNDN);
        mpfr_init(r8200);
        mpfr_init(r8201);
        mpfr_init(r8202);
        mpfr_init(r8203);
        mpfr_init(r8204);
        mpfr_init_set_str(r8205, "5", 10, MPFR_RNDN);
        mpfr_init(r8206);
        mpfr_init(r8207);
        mpfr_init(r8208);
        mpfr_init(r8209);
        mpfr_init_set_str(r8210, "4", 10, MPFR_RNDN);
        mpfr_init(r8211);
        mpfr_init(r8212);
        mpfr_init(r8213);
        mpfr_init_set_str(r8214, "7", 10, MPFR_RNDN);
        mpfr_init(r8215);
        mpfr_init(r8216);
        mpfr_init(r8217);
}

double f_dm() {
        ;
        mpfr_neg(r8188, r8187, MPFR_RNDN);
        ;
        mpfr_div(r8190, r8188, r8189, MPFR_RNDN);
        ;
        mpfr_sqrt(r8192, r8191, MPFR_RNDN);
        mpfr_div(r8193, r8192, r8189, 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(r8198, r8189, 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(r8217, MPFR_RNDN);
}

